home *** CD-ROM | disk | FTP | other *** search
/ Risc World 5 / Risc World 5.iso / HTML / ISSUE1 / TEXT < prev   
Text File  |  2005-03-14  |  164KB  |  1,674 lines

  1.  
  2. ÿÿÿÿISSUE1/BASIC/INDEX.HTM Issue 1, BBC Basic
  3.  
  4.  
  5.  
  6. BBC Basic
  7. Martin Carradus introduces his latest programming tools.
  8. !BBCIndent
  9. !BBCIndent is designed to indent BBC BASIC programs to make it easier to follow any nested routines and procedures. It also makes it easier to see and follow CASE and IF THEN statements over multiple lines, for example, here is an original piece of code.
  10. DEFPROCpol
  11. SYS"Wimp_Poll",,b% TO r%:CASE r% O
  12. WHEN 1: PROCredra
  13. WHEN 2: SYS "Wimp_OpenWindow",,b
  14. WHEN 3: SYS "Wimp_CloseWindow",,b
  15. WHEN 6: PROCmouseclic
  16. WHEN 7: PROCenddra
  17. WHEN 9: PROCmenuclic
  18. WHEN 8: PROCkeypres
  19. WHEN 17,18 :PROCreceiv
  20. WHEN 19: PROCnoack(b%
  21. ENDCASE:ENDPRO
  22.  
  23. And here is the same after BBCIndent has processed it.
  24.   DEFPROCpol
  25.   SYS"Wimp_Poll",,b% TO r%:CASE r% O
  26.        WHEN 1: PROCredra
  27.        WHEN 2: SYS "Wimp_OpenWindow",,b
  28.        WHEN 3: SYS "Wimp_CloseWindow",,b
  29.        WHEN 6: PROCmouseclic
  30.        WHEN 7: PROCenddra
  31.        WHEN 9: PROCmenuclic
  32.        WHEN 8: PROCkeypres
  33.        WHEN 17,18 :PROCreceiv
  34.        WHEN 19: PROCnoack(b%
  35.   ENDCASE:ENDPRO
  36.  
  37. To load !BBCIndent double click on the !BBCIndent icon, an icon then appears on the icon bar, then drag a BBC Basic file to the bar icon, or left click on the bar icon and drag the BBC Basic file to the 'SetUp' panel that appears. This enters the file name into the upper slot on the panel. Alternatively the file name may be typed manually into this slot.
  38. Select the appropriate options on the 'SetUp' panel, then click on the 'Run' icon on this panel. After a while a Indented BBC Basic file is offered for saving in the same directory as the BBC Basic, but with its name prefixed with a capital "I".
  39.  
  40.  
  41. !BBCIndent and !BBCText in action
  42. Selecting the 'Help' or 'Description' buttons on the 'SetUp' panel and clicking on the 'Run' button gives out extra information.
  43. Additional Help is available by clicking the middle 'Menu' button over the bar icon and clicking over the 'Help' entry on the menu that appears, or by using the Acorn !Help application in the 'Apps' directory on the icon bar.
  44. !BBCText
  45. There is also an associated program called !BBCText, this converts tokenised BBC BASIC into normal text. If you have ever loaded raw BBC BASIC into a a text editor you may notice that it is full of control characters, instead of BASIC keywords. BBCText will convert each real BASIC token back into English. BBCText works in a similar way to !BBCIndent, you drag a file into the Window, then click on the Run button, then drag the new file out from the save dialogue box.
  46. Martin Carradus
  47.  
  48.  
  49. ÿÿÿÿISSUE1/BASICV/INDEX.HTM Issue 1, BASICV a Dabhand Guide Part 5
  50.  
  51.  
  52.  
  53. BASICV a Dabhand Guide Part 4
  54. Alligata Media
  55.  
  56. About this book
  57. We have largely left this book unaltered: the original edition was written by Mike Williams and included a section relating to the DABS Press books and software which has, of course, been deleted and we refer you to 
  58. At present we are considering an update to this book to cover the use of more modern BASIC in the shape of that supplied with the Risc PC, but offer no promises beyond this re-print. This book was produced using Ovation Pro on my StrongARM Risc PC; with the whole mainly typed from an original which was produced using VIEW on a Master Compact before being laid out for press in MacAuthor.
  59. This book will be serialised in the next few issues of RISCWorld.
  60.  
  61. Contents
  62. 11 : Sound
  63. BASIC Sound Instructions
  64. Setting the Stereo Position
  65. Setting and Reading the Beat
  66. Setting and Reading the Tempo
  67. Sound Statement
  68. Star Commands
  69. 12: Commands
  70. 13: ARM Assembler
  71. Calling Machine Code Routines
  72. Using CALL with Parameter Passing.
  73. Alligata Media
  74.  
  75. ÿÿÿÿISSUE1/DISC/INDEX.HTM Issue 1, DiscWorld
  76.  
  77.  
  78.  
  79. DiscWorld
  80. Aaron Timbrell rounds up the software directory
  81. As it's the start of a new volume I thought we would kick off with a real "Biggy" this time. After the number of requests for non APDL software we have negotiated a deal with DanSoft Developments to bring you WebFX3D, and later in this volume the WYSIWYG SiteWriter. For now though lets look at WebFX3D by reprinting part of a review published in RISCWorld volume 1.
  82. WebFX3D
  83.  
  84.       Many computer users build their own web site, maybe to give information 
  85.       about something, distribute some piece of software they've written, or 
  86.       just for the sake of it. Nowadays, no web site is complete without some 
  87.       pretty pictures to make things more interesting. Well, we can easily knock 
  88.       up some quick drawfiles (even put some fancy effects such as shading in 
  89.       with DrawWorks) and then convert to GIF, PNG or whatever format we wish 
  90.       with one of the shareware utilities. Such images can be very effective, 
  91.       but what about when you want something different? Maybe you want a sphere 
  92.       to use as bullet points, or maybe you want some shape or text to stand out 
  93.       of the page. You need to create a 3 dimensional image.
  94.       There are really only two choices when it comes to creating 3D images 
  95.       easily on RISC OS. TopModel, and WebFX3D. Topmodel is probably a bit 
  96.       overkill and expensive for someone who just want to knock up a few eye 
  97.       catching images for a web site, newsletter or poster. This is the market 
  98.       at which WebFX3D is aimed.
  99.       WebFX3D is developed by one man company Dansoft Developments, run by 
  100.       Daniel Jonson of Christchurch New Zealand. Dan says that he has always 
  101.       "had a calling to develop software which I consider to be great". So is 
  102.       this great software?
  103.       
  104.       
  105. WEB FX 3D main screen
  106.       
  107.       BasicsThe use of WFX can be split into 
  108.       3 main phases - entry of text or drawfile; setting lighting, camera angles 
  109.       and other options and finally rendering. WFX is a very large program and 
  110.       there are many options at each stage. Let's go through the process and see 
  111.       how everything works.
  112.       
  113.       The first thing that strikes you about WFX is the loading panel - it's 
  114.       smart and different. Now click on the iconbar icon and as expected a 
  115.       window appears. A window that is unlike any window you've ever seen 
  116.       before. There's a box to enter the text or drop a drawfile into, another 
  117.       box to choose your font, and some controls. Looking at the screenshot, we 
  118.       can see that the controls don't have labels. This isn't a problem, as the 
  119.       black area in the lower left corner displays the name and current setting 
  120.       of each control as you move the mouse over it. You'll have looked at the 
  121.       screenshot and thought "I love it!" or "I hate it!". More about user 
  122.       interfaces and window designs later.
  123.       
  124.       
  125. WEB FX 3D loading screen
  126.       
  127.       The controls are used to set Join segments and curve segments 
  128.       (basically how smooth object edges are), text ratio (make the letters 
  129.       fatter or thinner) and bevel type height and width. There is also a button 
  130.       that controls "angular optimisation" - we don't need to worry about this 
  131.       for now.
  132.       Overall, despite the unconventional design and lack of permanent 
  133.       labels, all this is quite easy to do. Although the user interface grates 
  134.       at first, it's obviously been thought about long and hard - the pop-up 
  135.       text works particularly well.
  136.       I've entered the word "Test" and made the letters slightly fatter than 
  137.       normal. I've also selected a rounded bevel and turned curve and line 
  138.       segments up to maximum. Let's click on "Generate" and go onto the next 
  139.       stage.
  140.       Clicking on Generate switches the machine to single tasking whilst WFX 
  141.       triangulates all the points needed to define our object in space. The 
  142.       program shows you this process as it happens. It takes a few seconds for 
  143.       short words, longer if more letters are involved. At the end of this 
  144.       process, you are told if there are any errors, and the initial 3D scene 
  145.       appears. The object is shown in wireframe, those with faster machines will 
  146.       want to switch on surface modelling and shading to get a better idea of 
  147.       what the finished scene will look like.
  148.       You can set the colour of the object here, using a colour picker that 
  149.       is again different to RISC OS convention. It works rather like an artist 
  150.       would mix paints (to my mind at least). You can also set options such as 
  151.       shininess, rotate the object on X or Y axes, move the camera and zoom in 
  152.       and out. You can experiment and see on the screen a good approximation of 
  153.       what your creation is going to turn out like. There isn't an undo feature, 
  154.       or even a 'restore to default'. This is actually quite a serious omission 
  155.       as it can be quite difficult to achieve what you want once you've rotated 
  156.       on both axes and got it wrong.
  157.       
  158.       
  159. WEB FX 3D colour picker
  160.       
  161.       You can also set a fog effect here, to give the impression of an 
  162.       atmosphere. This is particularly when the object is rotated to run 
  163.       diagonally 'into' the screen.
  164.       Clicking on the multicoloured sphere to the right hand side takes you to 
  165.       the lighting windows. This consists of four views, one each from the 
  166.       front, side and top of the object, and finally a smaller version of the 
  167.       main screen, showing the effect of your lighting. This part works quite 
  168.       intuitively. To add a light, drag one from the icon at the bottom of the 
  169.       screen. To get rid of a light you simply drag it to the bin at the bottom. 
  170.       The currently selected light is shown lit up and using the icons at the 
  171.       top of the screen you can set its colour and intensity. It's quite easy to 
  172.       position lights by dragging them around the three views and seeing the 
  173.       preview updated after every drag. You can zoom in, and also scale the view 
  174.       to fit every light and the object into the closest possible view with one 
  175.       click. Finally, the background colour can also be changed from this 
  176.       window.
  177.       
  178.       
  179. WEB FX 3D Lighting window
  180.       
  181.       Again, none of the window designs are what one expects from a RISC OS 
  182.       application. There is a hint of stonework, it feels almost like you're in 
  183.       a studio. All the buttons are designed to complement this style rather 
  184.       than comply to a standard.
  185.       If you're feeling lazy, you can apply lighting, atmosphere backgrounds 
  186.       and surface properties from a gallery. Likewise, if you are particularly 
  187.       pleased with some combination, you can save it as your own gallery entry 
  188.       for future use.
  189.       You can use some or all of the gallery attributes by clicking on the 
  190.       relevant radio buttons. In this way you can combine different elements 
  191.       from different galleries.
  192.       Now it's time to click on the "Render" button on the right hand side of 
  193.       the screen. But first let me explain what I've done with the word "Test". 
  194.       I've coloured the surface yellow, set the shininess quite high and rotated 
  195.       it slightly away from us on the X axis. I've then put a red light above 
  196.       and to the right, with attenuation so we get a variation in intensity 
  197.       across the surface. There is also a plain white light with no attenuation 
  198.       below and very slightly to the left of the word. The red circle on the 
  199.       lighting view shows where the attenuation starts - another red circle 
  200.       shows where it ends (the light has no effect), but I've zoomed in so it's 
  201.       out of view.
  202.       When you click on Render, you are presented with a dialogue box to set 
  203.       the image size, choose a background colour, switch on antialiasing and 
  204.       it's quality and choose the output format. Tabs allow you to set animation 
  205.       options and filters. Filters allow you to add a drop shadow, with user 
  206.       defined blurring and colour. you can also specify an image map to be used. 
  207.       So you can make the object look like it's made of wood, metal or some 
  208.       other texture by using an appropriate image. Some image maps that can be 
  209.       used are supplied with WebFX3D. It's a pity that you can't preview these 
  210.       effects, so it can be a bit of a shot in the dark at first.
  211.       
  212.       
  213. WEB FX 3D Rendering Options
  214.       
  215.       
  216.       Images can be output as:
  217.  
  218.       
  219.         16 million colour sprite 
  220.         256 colour sprite 
  221.         JPEG 
  222.         16 million colour targa 
  223.         16 million colour PBM When you're satisfied, clicking on 
  224.       render again sends the machine into single tasking mode. For the "Test" 
  225.       image rendering with full antialiasing at 400 x 173 size took around 30 
  226.       seconds. An 8 frame animation of the scene took a little over 5 minutes on 
  227.       my StrongARM RiscPC. Bigger output image sizes take longer, as do 
  228.       animations with many frames. Animations are output as a single sprite 
  229.       file, which can be easily converted to animated GIF's in seconds with 
  230.       Peter Hartley's excellent !InterGIF. I've rendered the scene, and also 
  231.       done an 8 frame animation of the word "Test" to give you an idea of what 
  232.       WebFX3D is capable of. The direct sprite and JPEG output is stunning, 
  233.       converting to GIF loses a little of the quality. I've also put together 
  234.       some other examples using some of the supplied gallery options, drop 
  235.       shadows, plugins and image maps.
  236.       
  237.       Plugins
  238.       Supplied with the application are four plugins. Each of these loads a 
  239.       scene directly into the main WebFX3D window ready for manipulating and 
  240.       rendering. Briefly, there is: 
  241.       
  242.       
  243.         VRML file loader 
  244.         Image file loader capable of loading any image ChangeFSI can handle. 
  245.  
  246.         Sphere generator 
  247.         Torus generator Each of these plugins is useful and add 
  248.       greatly to the usefulness of the application. In particular, the ability 
  249.       to save and load VRML files means it's easy to save your creation, do 
  250.       something else and come back to it later.
  251.       
  252.       There are also separate plugins which manipulate an image that has 
  253.       already been created. They are: 
  254.       
  255.       
  256.         Bend 
  257.         Colourise 
  258.         Scale 
  259.         Twist 
  260.         Wave Most of these are self-explanatory from the names. And 
  261.       happily there is a way to undo the effects of applying a plugin. 
  262.       Unfortunately it's a bit of a fiddle to run these plugins - you have to 
  263.       open up the !WebFX3D application, find the relevant directory and run the 
  264.       plugin module. Surely it would have been possible to make the plugins 
  265.       accessible from a menu within the main application.
  266.       
  267.       User Interface
  268.       You can't write about this application without considering the user 
  269.       interface. It's so radically different to anything else on RISC OS. Dan 
  270.       says he wanted to do something that "impresses others as much as Kais 
  271.       Power Tools [on the PC] impressed me". Dan also looked at a number of the 
  272.       PC packages when designing the interface for WebFX. If I'm honest, I am 
  273.       impressed by the look and feel of WebFX3D. It isn't to everyones taste by 
  274.       any means, and Dan says he's learnt from both WebFX3D and SiteWriter to 
  275.       focus more on what users want and expect. As it stands, the interface is 
  276.       well thought out, intuitive and easy to use. If you can get over the fact 
  277.       that it doesn't implement some things in a manner compatible with the 
  278.       Style Guide you'll almost certainly like it.
  279.       Documentation
  280.       I like clear instructions and I'm also a strong believer in printed 
  281.       manuals. I really don't like disc based manuals, mainly because they 
  282.       usually so badly implemented. How are you supposed to take yourself 
  283.       through a tutorial whilst the whole screen is covered by an Impression 
  284.       document? The documentation for WebFX3D is disc based, and once again 
  285.       Dansoft have ignored convention and produced something slightly different. 
  286.       The documentation works rather like an HTML document, in that it has 
  287.       active links. However, it covers only a narrow portion of the screen, so 
  288.       you don't have to constantly shift windows around whilst reading and 
  289.       trying things out at the same time.
  290.       
  291.       
  292. WEB FX 3D Online manual
  293.       
  294.       All the instructions are well illustrated and concisely written. I had 
  295.       no problems learning how to use the package. I actually like the way this 
  296.       has been done and frankly it puts some other publishers attempts at 
  297.       documentation (both printed and 'online') to shame.
  298.       The Future
  299.       Dan never expected to get rich from WebFX3D - "I thought I could make 
  300.       some pocket money out of it", it's more of a hobby. When a hobby stops 
  301.       being rewarding, or when work demands more time it's difficult to commit 
  302.       to the future. Dan is entirely honest when it comes to the question of 
  303.       future development "unlikely to be significantly improved" are what he 
  304.       says.
  305.       What about selling it to another developer? Apparently Dansoft was 
  306.       approached some time ago but for various reasons Dan decided he was unable 
  307.       to accept the offer. "Nowadays, yes they could take over [the] software I 
  308.       think".
  309.       However, none of this means that Dan has lost enthusiasm for WebFX. He 
  310.       talks of making an effort to improve the software before too long - it's 
  311.       just a question of finding the time to do so.
  312.       "To be fair, I wouldn't suggest anyone purchase this software if they 
  313.       expect a subsequent version to be released." He makes the point that 
  314.       software should only ever be purchased on what it can do, not what it may 
  315.       do in the future.
  316.       Conclusion
  317.       I like WebFX3D. It does exactly what it says on the tin in a fun and 
  318.       easy to use manner. It isn't perfect, and there are some features that 
  319.       could be improved. There really ought to be a mechanism to undo all 
  320.       actions carried out. The current method of accessing the plugins makes the 
  321.       package feel slightly unfinished. This is a shame as the presentation is 
  322.       otherwise very slick.
  323.       Other minor improvements I'd like to see would be more control over the 
  324.       animation options - particularly the orientation and position of rotation 
  325.       axes. As mentioned it would be nice to see the effect of drop shadows and 
  326.       image maps before committing to rendering.
  327.       Another omission is that the centre of rotation in the main window is 
  328.       fixed - being able to shift it would make it much easier to achieve 
  329.       certain orientations.
  330.       There are some other very minor improvements that could be made to 
  331.       dialogue boxes and suchlike but nothing to get excited about. As for the 
  332.       output, WebFX3D does it's job very well. Using the tools provided in the 
  333.       main application and the plugins as required, it is possible to create 
  334.       almost anything that you wish. Of course it's never going to be able to 
  335.       render a 3D model of a car, but then you really should be using something 
  336.       else for that. For text and simple shapes you'd be hard pushed to find a 
  337.       better application than WebFX3D.
  338.       
  339.       Pros:
  340.  
  341.       
  342.         Well designed 
  343.         Well documented 
  344.         Interesting and fun to use 
  345.         Excellent output 
  346.         Lots of options and user control to create many different effects 
  347.         Very stable 
  348.         It's cheap 
  349.         Good support from Dansoft 
  350.       Cons:
  351.  
  352.       
  353.         Some people will not like the interface 
  354.         Awkward to access plugin effects 
  355.         No undo for most actions 
  356.         Limited potential for future improvement 
  357.       Putting things into perspective many of the faults are relatively minor 
  358.       and I wonder if Dan couldn't find the time to make some small changes. 
  359.       It's clear that WebFX3D is the product of a very skilled programmer who 
  360.       can design an application as well as he can hack code. The product exudes 
  361.       quality and style and I suppose this is a reflection of Dans own 
  362.       enthusiasm for his software.
  363.    
  364. The complete DiscWorld line up
  365. BASIC
  366. Martin Carrudus presents his latest BASIC tools.
  367. Games
  368. All the games from this issues games world column.
  369. PD
  370. All the latest PD, shareware and freeware releases from the PD column.
  371. PowerBase
  372. The latest version of PowerBase.
  373. StoryText
  374. Impression TextStory File to Text File Converter.
  375. ToolBox
  376. This contains two sets of Toolbox Modules. The Castle archive contains the latest 26/32 bit neutral system components, required if you want to run a lot of new software releases on 26bit machines (ie. anything that isn't an Iyonix). The RISCOS Ltd archive contains later and improved versions of a number of modules and is suitable for all versions of RISC OS from 3.1 onwards.
  377. Wakefield
  378. More shoddy show videos.
  379. WebFX3D
  380. The full unrestricted commercial application.
  381. Aaron Timbrell
  382.  
  383. ÿÿÿÿISSUE1/EDITOR/INDEX.HTM Issue 1, Editors Corner
  384.  
  385.  
  386.  
  387.  
  388. Editors Corner
  389. Aaron Timbrell's own bit of the magazine.
  390. Welcome to the start of Volume 5 of RISCWorld. Just like last issue I am writing the editorial bit of RISCWorld a bit early, well 3 weeks early if you want the truth. Why am I doing this? Well this time I have a decent excuse. The Wakefield show is coming and I have quite a bit of work to do on the new versions of VirtualRPC that we are going to release. So In true time honoured editor style I am writing this at 3:30 in the morning having decided that I need to pull an all nighter to get RISCWorld hammered into shape before the show.
  391. I could wait till after the show, but that would only give me a week or so to get RISCWorld finished, and that simply isn't enough time. After long days of practice I think I have finally cracked how to do an issue. I collate stuff for around a month (articles, ideas, fluff, rusty vehicles etc), then sit down one afternoon and see what fits into the flatplan I worked out whilst doing the previous issue. I then ignore this totally and start putting bits and bobs together. It helps that we have a team of writers who deliver articles early, in fact (and tempting providence) would you believe that 8 articles have already been written and submitted for this issue 2 weeks ahead of the copy deadline? This is the 2nd issue running where this has happened, surely it can't continue, but I would be delighted if it did.
  392. So I start assembling what has already been written, then I start altering stuff, then I start writing my own articles, and since it's one that requires no real research I can start with the editorial, which is where I came in. It's now 3:37 in the morning and what can I find to rant about.
  393.  Editors Rant of the month
  394. Last month I had a good whinge about insurance. It's now 3:49 and I have so far been unable to find anything to moan about. I have checked to see if I have a temperature, and indeed I do, regretfully it's normal, so why can't I find a single thing to get my teeth into? Well I suppose it's because almost nothing has gone properly wrong over the last 6 weeks or so. The Shogun (Oh look he's talking about cars again - HJ) managed to break its wiper motor, but I found a replacement for £30 including VAT and carriage, and it didn't really rain very much while the new motor was speeding through the night(s) on a highly powered Parcel Farce ox drawn cart. Fitting the new motor took 10 minutes, and it worked fine, so that isn't a very exciting story.
  395. I did buy a new 19" LCD monitor, but again it wasn't any fun, I went to the shop, bought it, came home with it, plugged it in, it worked....which is really annoying. I have extended the drive outside our house to provide an extra parking place, which did entail digging out a couple of tons of earth by hand, but it was only 3 weekends work, and all the earth went to the tip in rubble sacks. I did hope for a bit of excitement when ordering the concrete to fill the hole. Would the driver turn up, would the mix dry too soon? Well the driver turned up early, my helpers had already turned up even earlier, and we had a light drizzle all day so the concrete didn't start setting. So again I had nothing to whinge about.
  396. I had to buy some new toner for my colour laser printer, which did cause a big pain in the wallet, but on checking my records I see that the cartridge lasted almost exactly its quoted page count, so I can't really complain and it's only 3:55, why don't I look out the window and see if the sun has come up? No it hasn't, oh well, it's never very dark outside anyway because of the street lamps, which does make using my telescope a near pointless exercise, but I only have to drive 4 minutes and I am out in the country...
  397. So to sum up nothing seems to have gone wrong and I am bloody furious about it, I mean how am I supposed to fill up editorial articles if I can't find anything to complain about...oh.....
  398. Printing RISC World
  399. The new look of RISC World means that you will no longer get the yellow background when printing articles from RISCWorld. However you will still get the blue border on the left unless you turn off the printing of background images. The example below shows the print dialogue box from Fresco.
  400.  
  401. As you can see the option "No Background" is ticked. If you want to print out any of the RISCWorld pages and don't want to waste ink on a blue border then make sure you have clicked a similar option in your browser.
  402. Aaron Timbrell
  403.  
  404.  
  405.  
  406. ÿÿÿÿISSUE1/EDUC/INDEX.HTM Issue 1, The Education Column
  407.  
  408.  
  409.  
  410. The Education Column
  411. Andrew Harmsworth with the latest Education news
  412. Many of you must have wondered what had happened to the Education Column for the last few issues (Aaron certainly has!). Well, I've been busy. Getting married apparently takes huge amounts of organisation. That and the fact that GCSE.com seems to be generating lots of advertising revenue, little things like this get left to one side.
  413. Anyway, it's back. This month I take a look at some simple digital image manipulation - that anyone can do - yet most either ignore or fail to realise it's possible. Oh, and a moan about PAT testing.
  414. PAT Testing
  415. I've been proud of the fact that I managed to prevent a large number of RiscPCs and A7000/+ machines from being skipped in my school. They've been incredibly useful in my department - for analysing experimental results (GraphDraw), for datalogging (Insight 2 with DCP Datameters or LogITs), for quickly throwing out a Textease document, for TechWriter, old BASIC teaching programs, etc.
  416. Every year, as I suspect is standard practice, portable appliance testing is carried out (PAT testing). This year they brought with them more sophisticated equipment. Previously the only test carried out on computers was a cursory glance at the power lead (and checking of the case for holes). This year, they failed 4 RiscPCs, 5 monitors (AKF60) and 3 A7000s. I don't know what is wrong with them. They just produce an exciting "fail" on the display, despite working perfectly. Ugly red stickers with "DO NOT USE" have therefore been plastered all over the machines' power supply sockets. Great. Thanks. Very helpful. I wonder if anyone ever tests the PAT-testing equipment? I'd love to fail it...
  417. It would seem, therefore, that the future of RISC OS computers in schools or businesses where PAT testing is "really sophisticated" is on PCs running Virtual Acorn. I think there's something deeply ironic about this, but I can't quite put my finger on it.
  418. Gamma Correction (& more!) for Beginners
  419. At time of writing, the much-hyped (and probably rightly so) Wakefield Show is about to happen. As with all RISC OS shows, websites will soon be filled with photographs taken on digital cameras (or camera phones: see 
  420. In fact, this article arose after an email discussion with Aaron. I was quietly complaining that the images he'd taken for the RISC OS South-West Show report could have done with some gamma correction. Apparently, they had been corrected! Another question for Aaron then: why were the photos GIFs not JPEGs?.(Answer - because I can't remember why, but I am sure there was a good reason at the time - ED).
  421. GIF vs. JPEG
  422. I'm sure this has been covered before, but the GIF file format is generally considered applicable to simple graphics, such as those you might produce using Draw or Paint. It is also limited to 256 colours and it can have a mask (to allow transparency).
  423. On the other hand, the JPEG file format (which stands for Joint Photographic Expert Group) is - surprisingly enough - one of the best formats for producing photographic images that have millions of colours and extremely high levels of complexity.
  424. Both the GIF and JPEG formats are compressive, meaning the file size you end up with is much smaller than if you had the same image as a SPRITE (for example). The subtle difference here is that the GIF format is lossless (unless you do something really silly) - meaning the final image has the same quality as the original - whereas the JPEG format is lossy - meaning you can choose to lose a certain amount of quality whilst saving huge amounts of file space.
  425. Let's take a look at Aaron's first photo from the last issue:
  426.  
  427. RComp - Aaron's original image from Vol. 4, Issue 6: 62K
  428. Let's see what happens if we load this using !ChangeFSI (which everyone has and can use on all modern RISC OS kit).
  429. Firstly, ChangeFSI will turn it by default into a Sprite file. You can get it to produce a JPEG by clicking MENU on its iconbar icon:
  430.  
  431. ChangeFSI's iconbar menu, and JPEG options
  432. As standard, the 'quality' is set to 75%, but this can easily be altered. 75% gives an excellent improvement to file sizes, without too much loss of quality. Let's see Aaron's image as a 75% quality JPEG:
  433.  
  434. RComp - Aaron's updated image as a JPEG: 30K
  435. The file size is less than half that of the GIF, yet the image itself is almost indistinguishable from the first. Making the file size as small as possible is good practice for use on web pages.
  436. Let's get back down to business regarding Gamma Correction. This is used to correct the quality of images but is more sophisticated than just altering the brightness or contrast. To a first approximation, it does both whilst retaining the overall "feel" of the photograph. ChangeFSI can apply gamma correction at the same time as many other effects. To do so, choose Processing from the iconbar menu:
  437.  
  438. ChangeFSI's Processing options
  439. Low values of gamma correction (from 0 to 1) make colours darker; high values (above 1) make them lighter. 2.2 has a quite considerable effect, too much. Let's start from 1.1 and work through to 2.1. For ease of comparison, I've also asked ChangeFSI to make the images smaller:
  440. Original: gamma=1.0gamma=1.1gamma=1.2
  441. gamma=1.3gamma=1.4gamma=1.5
  442. gamma=1.6gamma=1.7gamma=1.8
  443. gamma=1.9gamma=2.0gamma=2.1
  444.  
  445. As is quite clear, the more gamma correction one applies, the clearer the final image can become. The colours are still not right, however. To improve the balance (that wall is white, presumably?) better software is really needed. Photodesk does a good job with white balance, and has a highly intricate approach to Gamma Correction:
  446.  
  447. RComp - Aaron's image passed through Photodesk
  448. Finally, if you find messing around with ChangeFSI too time consuming, I strongly recommend the use of Jochen Lueg's excellent !Batch_FSI utility. This is just an additional front-end for ChangeFSI, but it allows you to dump an entire folder of images to undergo the same processing (of your choice) in one single go. So, for all of you wishing you could be bothered to slightly improve your digital images: fire it up and see if you like it! 
  449. If you have any questions or comments on the use of RISC OS computers in education, please either email education@harmsy.freeuk.com or better still join the RISC OS Education Discussion List, and air them there.
  450. Andrew Harmsworth
  451.  
  452.  
  453. ÿÿÿÿISSUE1/EXPO/INDEX.HTM Issue 1, Expo 2004
  454.  
  455.  
  456.  
  457. Expo 2004
  458. The mainland Europe Expo 2004 previewed by RISCWorld
  459.  
  460. Once again the Big Ben club in the Netherlands is organising another RISC OS show on Saturday the 19th of June 2004. This is the only RISC OS show that takes place outside the UK and is supported by a number of RISC OS companies, and is sponsored by X-Ample Technology, Castle Technology, RISCOS Ltd and MicroDigital. The show will take place at Expohall, Hotel Mercure Buizerdlaan 10, Nieuwegein (near the city of Utrecht) in the Netherlands.
  461.  
  462.  
  463. Map of the show venue
  464.  
  465. The Show offers exhibitions and promotions by various companies, including Dutch, German and British RISC OS dealers. A number of club members will also be on hand to offer demonstrations. This is an excellent opportunity for European customers to meet with companies based in the UK, as well as an ideal time for UK companies to be able to demonstrate their products face to face.
  466. It's hoped that there will be a show theatre, although at the time of writing a list of speakers was not available. However the latest information can always be found on the club website at 
  467. Aemulo
  468. Archive Publication
  469. Castle Technolog
  470. Des
  471. Dr Wim
  472. MicroDigital Europ
  473. MWSoftwar
  474. R-Com
  475. RISCOS Lt
  476. Unix Porting Projec
  477. X-Ample Technolog
  478.  
  479. More companies are hoping to confirm shortly.
  480. For partners of those who are going to the show, but that are not interested in RISC OS (fools -HJ) there is the possibility of a city tour of Utrecht being offered by a local guide who knows the city like the back of his hand.
  481. The Expo 2004 offers a great chance for UK dealers to see their European customers, and for RISC OS users living in mainland Europe to try a wide range of RISC OS product before parting with any hard earned money.
  482. RISC World
  483.  
  484. ÿÿÿÿISSUE1/GAMES/INDEX.HTM Issue 1, Games World
  485.  
  486.  
  487.  
  488.  
  489. Games World
  490. Paul Brett with the latest gaming news.
  491. Welcome to volume 5 of GamesWorld. For a column that was going to be dropped 2 years ago because of the low number of RISC OS games being made available we are are not doing too badly! Last issue readers may well remember that I gave you the details of 
  492. Cycloids
  493. Cycloids was written by Tom Cooper, and was released commercially by Software 42 in 1993. However, Imparo, who now own the rights to Cycloids and a handful of other games, have given permission for Cycloids to be re-released as freeware. So, here it is - freeware Cycloids, compatible with all versions of RISC OS from 2 to Select!
  494. So what is Cycloids? Well it's a platform game featuring a unicycling clown, who, for some reason known only to Tom Cooper, has to navigate various levels collecting diamonds and other assorted items of treasure. To make the clowns job as difficult as possible a number of cunning badies will try and get in his way, if they succeed then the clown will fall of his unicycle and fall to his death. The game features a rather bright 256 colour palette and can get rather manic at times, especially when you need to do a pixel perfect jump whilst avoiding pink flying elephants.
  495.  
  496.  
  497. Cycloids in action
  498. To run the game simply double-click on !Cycloids. You can also redefine the controls by running !CycKeys. If you don't want to change the keys then you will need to use the defaults which are:
  499. Z- Lef
  500. X-Righ
  501. ' - Jum
  502. Return - Fire (once you've collected a weapon
  503. Escape - Quit to main menu/quit to deskto
  504.  
  505. Darkwood
  506. For those that like a bit more meat on their games AcornArcade have also released the massive adventure game Darkwood. For those that have never seen this game before it was released to take some advantage of the more powerful RiscPC type hardware and offers a real 3D landscape to walk around, along with plenty of sub quests to undertake for the large number of non playing characters that you can interact with. In play Darkwood feels quite a lot like a Zelda game (for those that don't know the Zelda games are published for Nintendo hardware - Aaron). Like Cycloids this was also written by Tom Cooper and is quite an immersive experience.
  507.  
  508.  
  509. Darkwood, in the wizards house
  510. Darkwood can be played on RISC OS 3.5 to 3.7, Select and RISC OS 5 (if you use a copy of !A310Emu), there is a bug that causes the game to crash under RISC OS 4 if you fire whilst inside a building.
  511.  
  512.  
  513. Darkwood, outside the wizards house
  514. The controls are as follows:
  515. Z and X - Turn left and righ
  516. ' and / - Walk forwards/backward
  517. Space - Fir
  518. Return - Jum
  519. P - Pause/ingame option
  520. Ctrl-Escape - Quit to men
  521.  
  522.  
  523.  
  524. Look a pub...
  525. The mouse is used for interacting with many objects in-game, such as the action buttons in the bottom-right of the screen. Some actions such as dropping and throwing require an item to be selected in your inventory first. If the game is running too slowly on your machine, then it would be a good idea to look at the graphics options in the in-game options menu.
  526.  
  527.  
  528. ...lets go in.
  529. Before I go I will leave you with a few helpful hints for playing DarkWood.
  530. To go upstairs you have to keep pressing Jum
  531. Try talking to everyone you mee
  532. Some badies can be faster that you are so back away from them whilst firin
  533. Wizards don't tend to swim very well
  534.  
  535. I hope you enjoy these two releases, I will back with more games next issue.
  536. Paul Brett
  537.  
  538.  
  539.  
  540. ÿÿÿÿISSUE1/GAMES2/INDEX.HTM Issue 1, RISC OS Games roundup
  541.  
  542.  
  543.  
  544. RISC OS Games roundup
  545. Matt Thompson
  546. Despite the lack of new releases appearing for RISC OS machines, there are still many games still available which are well worth investing in which you may have missed or just never got round to buying them, there are some very good value for money compilations available and also official free downloads from the internet.
  547.  
  548. Where can I get them from ?
  549.  
  550. Go to 
  551. CJE Micros and The 4th Dimension
  552.  
  553.  
  554. The 4th Dimension, 
  555. Liquid Silicon
  556.  
  557. Liquid Silicon 
  558. APDL
  559.  
  560. APDL, 
  561.  
  562. Rcomp Interactive
  563.  
  564. Rcomp Interactive, 
  565. Uffenkamp Computer Systeme
  566.  
  567. Uffenkamp Computer Systeme 
  568. The Data Store
  569.  
  570. The Data store 
  571. Ebay
  572.  
  573. Ebay 
  574. Newsgroups
  575.  
  576. People often advertise their old games for sale in csa.acorn.misc, or csa.acorn.misc, a bargain or two can often be found.
  577. Apologies to any other games suppliers/developers I have missed out, if I have missed you it's because I didn't know about you, so make yourself known!!
  578. Which Ones To Get?
  579.  
  580. Everyone has their own idea's to the best games and the worst ones, but heres a quick selection of some of my favourites from over the years in no particular order.
  581. Magic Pockets
  582.  
  583.  
  584. Simon The Sorcerer
  585.  
  586.  
  587. Darkwood 
  588.  
  589.  
  590. Screenshots taken from the games running on !A310Emu on an Iyonix.
  591. I couldn't write an article on games without mentioning my all time classic game which is :
  592.  
  593. Jet Set Willy -  the version available for RISC OS is by Darren Salt and is public domain and available from 
  594. It won't work
  595.  
  596. The problem is, as technology moves on, many of the older games no longer work, many of them have been updated to work with newer machines, and a large number of patches are available to help get those games running again the following sites are worth checking out 
  597. Users of RiscPCs might want to check out !StrongGuard 
  598.  
  599. Many of these games won't run on the Iyonix, but by using !A310emu a free program currently work in progress and is available from 
  600. So there you have it, until the new games come along, theres plenty to keep the RISC OS game player entertained, and thats without even mentioning PD games and emulation of games from other machines.
  601. Matt Thompson
  602.  
  603. ÿÿÿÿISSUE1/HUGHJ/INDEX.HTM Issue 1, The Hugh Jampton Experience
  604.  
  605.  
  606.  
  607. The Hugh Jampton Experience
  608. He's back...herrrrrre'sssssss....Hugh!
  609.  
  610. So here we are again, at the start of another new beginning for RISCWorld, the start of volume 5, or a bit past the end of volume 4, take your pick. Anyway lets launch straight into...
  611. The caption competition
  612. Anyone who hasn't cancelled their subscription might remember this:
  613.  
  614. I can safely say that we have had an improved response over last time, so in no particular order we have...ta ta ta tata tata!
  615. "Intel's new P5 Processor - They're currently having problems with cooling !"
  616.  
  617. John Crane
  618. "Boy, these Pentiums sure run hot!"
  619.  
  620. Dennis Williams
  621. "No it's not a cooling fan: quite the reverse. It's a wind turbine to power my RISC OS machine."
  622.  
  623. Chris Newman
  624. "Do you hate noisy internal fans ? This could be the answer"
  625.  
  626. John Crane
  627. "PENTIUM 5 THE FASTEST FAN ON THE MARKET TODAY"
  628.  
  629. Dennis Williams
  630. "Stop! Don't turn the fan on just yet, I am frying my bacon and eggs."
  631.  
  632. Alan Shooter
  633. "You think your internal fan's noisy, wait till we crank up this little beauty!"
  634.  
  635. John Crane
  636. "Intel Outside!"
  637.  
  638. John Crane
  639. Puzzled & angry wife from kitchen - "Darling, I think some yobo has stolen the extractor fan from above the cooker."
  640.  
  641. Chris Newman
  642. "Fantastic!! We can now produce more hot air than the politicians."
  643.  
  644. Alan Shooter
  645. However for careful use of understatement I have decided that we will have two joint winners, and they are:
  646. "New Cooling fan for PC slightly larger than expected"
  647.  
  648. Matt
  649. "Well, I ordered it on-line and I could possibly have typed the decimal points in the wrong places in the dimensions box....."
  650.  
  651. Chris Newman
  652. Congratulations to all our competitors in what was a very close battle, the fact that we have joint winners should indicate the overall standard, so what can out captioneers come up with for this?
  653.  
  654. Send your entries to HughJ@riscworld.co.uk and you too could join the rich and famous (if you win the lottery).
  655. Hugh's picture gallery
  656. So it's time for the last bit of the magazine, my regular photo gallery...
  657. so who remembers the RiscPC with a pizza oven in it? Here's the car it was delivered in.
  658.  
  659. At least this wasn't the driver.
  660.  
  661. Mind you with driving like that, this could easily be the result.
  662.  
  663. Still back in the real world RISC OS dealers are rushing to Wakefield.
  664.  
  665. They should be OK, as long as they aren't trying to catch the train.
  666.  
  667. And yet again it's time to end with the cute little doggy...
  668.  
  669. Hugh Jampton
  670.  
  671. ÿÿÿÿISSUE1/IYONIX/INDEX.HTM Issue 1, Iyonix Issues
  672.  
  673.  
  674.  
  675.  
  676. Iyonix Issues
  677. Mark Rowan with our Iyonix column.
  678. Aemulor Pro released
  679. Within the last couple of weeks the Aemulor team proudly announced the initial release of Aemulor Pro. I think I can forgive them the slight delay now that I've seen the magic Adrian and Neil have worked on this important piece of software.
  680. Aemulor for Omega?
  681. Mind you, the delay is hardly a drop in the ocean compared to the ever-on-the-horizon MicroDigital Omega (which has been shipping for 12 months now - ED), which is still to receive its touted XScale and networking components (networking is shipping now - ED). One of the reasons cited for the Omega's delay (again I point out that it has been shipping for 12 months - ED) is the ARMTwister technology which allows 26-bit code to run natively on the Omega's 32-bit-only XScale processor (similar to that used in the IYONIX).
  682. Seeing the success Aemulor has enjoyed in getting incompatible software running on the IYONIX, and the impressive speed with which it converts 26-bit code to its 32-bit equivalent, I wonder if MicroDigital would consider it wise to commission the Aemulor team to produce a version for the Omega and simply do the code conversion in software rather than spending more time developing the ARMTwister.
  683. Right On, Commander
  684. Aemulor Pro now allows the IYONIX to do run some software which even StrongARM RiscPCs are unable to run. Using Aemulor Pro it's now possible to transparently emulate an ARM3 A5000-class machine, including the old video and sound support chips, meaning that your Aemulor-equipped IYONIX can play games such as the unpatched Chocks Away or Stunt Racer 2000, and a good number of other non-StrongARM games. Where included in the games, sound is played back under emulation at a quality imperceptible from that obtained via the RiscPC the last time I heard them.
  685. I've had great fun playing some old favourites (in fact this review was badly  delayed due to such 'research') such as Spheres Of Chaos complete wit
  686. psychedelic sound effects, Super Foul Egg ('Oh Yeah!'), TEK, Syndicate and Heroes of Might and Magic II. Exodus an
  687. MarsQuake hav
  688. been dusted off and work well, although I started off having some troubl
  689. with Elite (data aborts and other errors). I suspect it may have somethin
  690. to do with the fact that I was using an oddly patched copy  so I got 
  691. fresh copy from AcornArcade whic
  692. works well - smooth, fluid motion and possibly slightly quicker than on m
  693. StrongARM RiscPC which adds to the action and excitement. It's weird ho
  694. you can pick up flying a Cobra Mk III again after so long away from th
  695. colourful seat. I suppose it's like riding a bike; you never forget
  696. Low-colour screen modes
  697. Aemulor Pro also provides the long-awaited low colour depth screen mode
  698. which allows older games and important applications such as Sibelius to ru
  699. once again - the IYONIX's graphics card doesn't natively support any fewe
  700. than 256 colours, which is where Aemulor Pro steps in
  701. 16-colour low-res games seemed to run quite happily on my IYONIX, and a
  702. a good speed. If you look at the display manager you will notice that whe
  703. Aemulor Pro is running there are a few more colour modes to choose from. Yes
  704. the desktop can be run in 2, 4, or 16 colour modes too (quite why you'd wan
  705. to is beyond me, but if you have your reasons I'd love to hear them!) although it's noticeabl
  706. slower than running in a natively-supported (256 colours or more) screen mode
  707. Adrian Lees has said that there are plans to increase the speed of the low
  708. colour modes
  709. 26-bit TaskWindows
  710. A cool new feature of Aemulor Pro is its ability to open a 26-bi
  711. TaskWindow from which all code executed will be done under Aemulor. Thi
  712. means you can enter a 26-bit-ok incarnation of BASIC for example, in order t
  713. run some programs containing 26-bit-only assembler. It would be nice if th
  714. TaskWindow could be opened on a keypress though, as at the moment it's a
  715. option available only from the iconbar icon - and if you've told Aemulor t
  716. hide its icon then that means running the frontend from the Apps director
  717. beforehand which is a bit of a hassle
  718. Aemulor Pr
  719. also contains a helpful task display similar to RIS
  720. OS' own
  721. Filing Systems
  722. One of the most major new features of Aemulor Pro is the support for 26-bi
  723. filing systems, for example CDROMFS and Win95FS. In the absence of an
  724. updates from Warm Silence Software Aemulo
  725. may turn out to be the only way to keep these important applications working
  726. CDROMFS 1.50 seemed to work well on my Iyonix but the supplied 1.7
  727. version didn't seem quite so happy. It's probably best to try both out; i
  728. 1.75 works then you may as well stick with it, but if you have to fall bac
  729. to 1.50 then Warm Silence agree that it's probably not too great a los
  730. (their helpfile suggests exactly the same advice, just not in the context o
  731. Aemulor)
  732. Owners of Psion handhelds such as the Revo and Series 5 may be pleased t
  733. know that PsiF
  734.  appears to initialise successfully and attempt to connect. Unfortunatel
  735. this is far as I can report at the moment as I helpfully left my Revo'
  736. docking station almost 100 miles away, but I'm keen to try it out befor
  737. the next issue of RISCWorld
  738. TopModel
  739. The Aemulor team is keen to hear from
  740. anyone who's successfully run TopModel2 under Aemulor Pro
  741. Joysticks
  742. Now that lucky Aemulor Pro-wielding IYONIX users can play all their favourit
  743. games again, the issue of joysticks has arisen. After a brief discussion o
  744. the support SmartGroup Paul Reuvers, man of all things USB, announced that h
  745. is developing USB joystick support for his HID application
  746. No release timescale has been given but if Paul's previous performance i
  747. anything to go by, it won't be too long and it will certainly be worth th
  748. wait
  749. Eye candy
  750. Users of RISC OS 4 will probably notice some apparent omissions in th
  751. configuration panels of RISC OS 5. One of the things I noticed when 
  752. first started using my IYONIX was that the desktop looked a bit roughe
  753. than the RISC OS 4 RiscPC's desktop did. Items on the pinboard ha
  754. horrible boxes behind them; the pop-up menus were plain white instead o
  755. textured, etc
  756. All of these were things that could be changed on RISC OS 4 to improv
  757. the appearance of the desktop, but which didn't seem possible on RISC OS 5
  758. But by using a command *WimpVisualFlags all the wonderful eye-cand
  759. of pre-Select RISC OS 4 can be switched on or off to your heart's content
  760. Castle say that the configuration options most likely will make their wa
  761. back into the OS at some point, but until then there is a page of informatio
  762. on how to use th
  763. WimpVisualFlags command
  764. Part of the ethos of RISC OS is the close relationship between the comman
  765. line and the desktop. True to form, there is an application availabl
  766. (courtesy of Bruno D'Arcangeli) which allows each of these visual nicetie
  767. to be switched on or off from a convenient desktop-based control panel. Ge
  768. WimpVF here
  769.  WimpVF allow
  770. you to choose which pieces of eye-candy to switch on
  771. What's in a name?
  772. I've had an email from a Mrs Trellis of North Wales, who ask
  773. Dear Mark
  774. Why do you keep on spelling the word IYONIX wrongly
  775. The sticker on the front of my beautiful grey box clearly say
  776. 'IYONIX pc' The sticker on the front of my beautiful grey box clearly say
  777. 'IYONIX pc' yet your last column was filled with references to 
  778. mysterious 'Iyonix'. Please sort this out. Yours sincerely, Mr
  779. Trellis N. Wales
  780. And she does have a point. RISCOS Ltd are keen t
  781. point out that the product they sell is called RISC OS and i
  782. runs on a Risc PC. Clearly spelling is important in the case o
  783. RISC OS as I understand there is another totally separate Unix-based syste
  784. named RiscOS
  785. Well far be it from me to cause offence to Mrs Trellis and whoever a
  786. Castle thought up the name in the first place, but in my introductor
  787. article I did state that it's going to include opinions. And my opinion o
  788. the IYONIX-Iyonix issue is that I prefer Iyonix. When someon
  789. tells me they have a RISC OS IYONIX it looks like they may be hard o
  790. hearing and have to shout or something
  791. But in the interest of correctness I shall try to stick to IYONIX
  792. in future
  793. Mark Rowan iyonix@tamias.co.uk http://www.tamias.co.uk
  794.  
  795.  
  796. ÿÿÿÿISSUE1/LETTERS/INDEX.HTM Issue 1, Letters Page
  797.  
  798.  
  799.  
  800.  
  801. Letters Page
  802. It's cheap and cheerful, but you give us an earfull...
  803. Dear Aaron,
  804.  
  805. Thanks for including both my Text->Draw and Q->BBC Basic Converters on your last subscription disc. Talking about spelling checking in DTP applications before converting to Draw, attached is a zipped Impression TextStory to Text Converter (!Story-Txt). The text you can save from Impression is full of control information in curly brackets, which this application strips out. The QBasic to BBC Basic Converter has now gone on a bit to Version 2.00 and is available from the Melotech site at Regards,
  806.  
  807.  Martin Carradus.
  808. It's always a pleasure to publish original software, so I have included a copy of !Story-Txt in the software directory of this issue.
  809. Aaron,
  810.  
  811. Nice issue, even though there's no education news. That's my excuse, and I'm sticking to it. We're about to buy 50 sets of those speakers Dave recommended, however! Thanks for the tip...
  812.  
  813. It always makes me grimace when I see digital images of shows that people have taken. OK, so flashes don't tend to reach very far (pants of course - the light gets there and reflects back: just too weakly for the camera's pathetic lens) but we're COMPUTER USERS people! This means we can apply a simple gamma correction in !ChangeFSI or even !Photodesk.
  814.  
  815. Sounds like something for my education column...
  816.  
  817. Andrew
  818. Education column...education column...you know I think we used to have one of those in RISCWorld, I wonder when it will be coming back? (Ohh look it's re-appeared in this issue) Anyway I hope you like the speakers, Dave Bradforth seems to like his set. Now back at the digital photos. Firstly the camera I was using doesn't have a flash, it's meant for digital video, not stills. And although it's hard to believe the images were after some correction had been applied, of course if someone would like to write me a nice article on how to gamma correct properly perhaps I won't make the same mistake again...(hint hint).
  819. Aaron,
  820.  
  821. i'm trying to open the DOSbox archive, but it has an icon which has a green question mark on it and the filetype is &B23. How do i open it? All the other archives are openable except this one.
  822.  
  823. Matt
  824. It's an X-File archive, which should work on an Iyonix (see my comments about X-Files in the last issues letters page) because we have 32 bitted X-Files for this very reason. I was a bit confused about this and then I got a follow up...
  825. Aaron,
  826.  
  827. Ignore my email about the dos-box archive, it just suddenly opened and got all the files out, so all ok now.
  828.  
  829. Matt
  830. Which is even weirder and has me slightly concerned, did anyone else have the same problem, if so did it just fix it itself? If so any ideas how, or indeed why?
  831. And now it's time for our regular start o fa volume I-not-going-to-re-subscribe letter.
  832. Aaron,
  833.  
  834. Just to let you know I am thinking about not re-subscribing to RISCWorld as I am not getting much out of it anymore:-( I am not going to buy a replacement for my Risc PC as the cost is to high and no support in Australia as well the specification is just not good enough. I may get an upgrade to run the Risc PC on a Windows computer some time in the future, unfortunately my copy of VA5000 will not run on my Toshiba laptop and I cannot justify purchasing a new PC either:-(
  835. Peter Prewett, Coromandel Valley, South Australia
  836. This letter has me a bit stumped, as what you seem to be saying is that you simply aren't going to buy a new computer of any sort, which is odd. If the RiscPC is working fine then it doesn't need to be replaced, so why not carry on using it. It's already paid for, it works, OK it may not be state of the art but does that matter? As for the laptop if it won't run VA5000 then it must be quite old, and due for replacement itself, or there is some software problem that is in the way. Why not e-mail me and let's see if we can get VA5000 going. If you don't want to subscribe to RISCWorld that's OK, but it sounds to me as though you are just giving up on everything, which doesn't ever help anyone, especially yourself.
  837.  
  838. If you have any comments on this issue, or the RISC OS world in general, then write in, we do want to hear from you. /P
  839. Aaron Timbrell
  840.  
  841.  
  842.  
  843. ÿÿÿÿISSUE1/LUA/INDEX.HTM Issue 1, RISCLua
  844.  
  845.  
  846.  
  847. RISCLua programming exercise
  848. Gavin Wraith on extending Lua with a construct to iterate over the contents of a directory.
  849. It involves only a few lines of code in ARM assembler and C to provide an iterator function dir for Lua so that syntax of the form:
  850.  
  851. can be used.  The report is intended as a small illustration to show how the RISC OS PRMs (Programmer's Reference Manuals), the APCS (ARM Procedure Call Standard) and the Lua/C API (Application Program Interface) can be used together to extend Lua on a RISC OS computer.
  852. Lua was designed to be easy to extend in this sort of way. In fact Programming in Lua, by Roberto Ierusalimschy, ISBN 85-903798-1-7, has an example in the last chapter (29, Managing Resources) of implementing a directory iterator for Unix. But Unix directories are not quite the same as RISC OS ones. Although I had no doubt that compiling the code given in the book, using Unixlib,would provide something that worked, I still felt that that was a long way round. I wanted to work it out for myself from first principles, using no extra baggage. I need hardly say that iterating over a directory is a facility that cannot be already provided in Lua, because Lua is written in ANSI C. The notion of directory is far too platform-dependent to be part of this. Lua is intended to be usable on devices like washing machines or snowmobiles which may not even have filing systems, let alone directories.
  853. Let us start at the bottom, and consult the PRMs to see which bits of RISC OS let us discover the contents of a directory. In volume 2, page 70, we find details of the SWI (SoftWare Interrupt) OS_GBPB,which returns information about a named directory if entered with R0 having the values 9,10,11 or 12. The simplest variant is  OS_GBPB 9, so that is the one we will use. This returns information only on the names of the objects in the directory, whereas the others also give further information (size, access permissions, datestamp, filetype, etc). Generalizing what is done here to a fancier construct, say:
  854.  
  855. Which provides the names and filetypes of all the objects whose names match the wild-carded string leafpattern is only a little more complicated, and can be left as an exercise. I will try to steer the simplest path. 
  856. So we enter the SWI with:
  857. R0 = 
  858. R1 = pointer to directory name (it will be null-terminated
  859. R2 = pointer to a buffer for the object's nam
  860. R3 = 1 (number of objects to be read
  861. R4 = offset of object to read (0 initially
  862. R5 = length of buffe
  863. R6 = 0 (match all object names
  864.  
  865. On exit from the SWI,  R0,R1,R2,R5 and R6 are preserved. R3 is the number of objects read. R4 is the offset of the next object to read, or -1 if there are no more. If R3 = 1 then the object name read will be a null-terminated string in the buffer pointed at by R2. This tells us what goes on at a low level. We note that R4 is a sort of iteration variable. The PRMs do not tell us what the values of R4 are, and we do not need to know, apart from the fact that we start the loop with  R4 = 0 and, if it terminates without error, it must terminate with R4 = -1.
  866. We must now use the Objasm assembler to convert this information into a C function. The APCS says (I oversimplify) that C functions are realized by ARM subroutines, with the first four arguments to the function held in the registers R0,R1,R2 and R3 and the remaining arguments on a full descending stack pointed to by R13.  The returned value is held in R0. The return address is held in R14. We will name the C function rdir.
  867. The idea is that rdir will return the new offset. The assembler code for this does most of its work shuffling register values. We write this in a file s.sys containing:
  868. ; s.sys
  869.     AREA RDIR,CODE
  870.     EXPORT rdir
  871. rdir
  872.     STMFD sp!,{R1-R6,R14}
  873.     MOV R6,#0 ; no pattern to match
  874.     MOV R5,R2 ; size of buffer
  875.     MOV R4,R3 ; offset
  876.     MOV R3,#1 ; number of objects to read
  877.     MOV R2,R1 ; buffer
  878.     MOV R1,R0 ; directory name
  879.     MOV R0,#9
  880.     SWI &2000C ;  XOS_GBPB - error returning SWI
  881.     MOVVS R3,#0 ; in case of error state none read
  882.     CMP R3,#1 ; anything read?
  883.     MOVEQ R0,R4 ; if yes return offset
  884.     MVNNE R0,#0 ; if no return -1
  885.     LDMFD sp!,{R1-R6,pc}
  886.     END
  887. The Objasm assembler will convert s.sys into an AOF (Acorn Object Format) file o.sys.  The linker does not care how AOF files have been created, whether compiled from C or assembled with Objasm. However, to be referenced by C code our rdir subroutine has to be dressed in respectable C clothes - that is, given a prototype declaration.
  888. We create a header file h.rdir containing rdir's prototype declaration.
  889. /* rdir.h */
  890. extern int rdir(const char *dir, const char *buf, int buflen, int offset);
  891. Note that this function has just four arguments, which the APCS tells us will be the contents of registers R0-R3 when the subroutine  rdir is entered.  To see how this function is to be used to implement a directory iterator in Lua, we have to alter our perspective for a moment and look at Lua's very general notion of for-loop. This is detailed in section 2 of chapter 7 of the book, under the title The Semantics of the Generic for , which I paraphrase here in a simplified form that is adequate to our special case.
  892. In general, a construction like:
  893.  
  894. in Lua is equivalent to
  895.  
  896. We call f the iterator function, s the invariant state and i the control variable. The loop is terminated when the control variable becomes nil.
  897. In our case there is only one variable () given by the object name, and exprlist consists of the single item .  The invariant state can be taken to be nil and the initial value of the control variable can also be taken to be nil ; subsequently it is the object name. So the function dir must return just the iterator function. In our case case the iterator function will be realized as a C function that returns the object name, or nil if there are no more objects. It will produce its result using internal state provided by dirname and the mysterious offset value used and returned by rdir.
  898. In Lua, functions are first-class citizens. That is, they can be assigned to variables just like other sorts of values. In C and Basic, functions cannot be assigned to variables. There, they are indissolubly wedded to one name, which they get when they are defined, and which are part of their definition. The Lua bulletin boards are full of messages from veterans of C and Basic who ask questions like when I am debugging how do I find out the name of the function I am in? This makes no sense, because functions in Lua do not necessarily have a name. It is like asking, if I have a value of 77 how do I find out the name of the variable that is storing it?
  899. Lua has lexical scoping. This means that a local variable is visible only within the block in which it is defined, and its subblocks, and after its declaration as a local variable.  Local variables can hold function values, of course. So what happens if such a local function value is returned as a result from the body of an enclosing function? What happens to the values of local variables defined in that enclosing function that happen to be used in the returned function? Consider, for example:
  900.  
  901. The value returned by fred is a function that depends on the local variable y which is not an explicit parameter, like z. The Lua terminology is that y is an upvalue of the function returned by fred. It depends, of course, on the actual invocation of fred that is used. What is returned by fred is not simply a function but a closure, the word used in computer science to mean the combination of function together with an environment (i.e. list of bindings) that interprets the function's upvalues - the variables it uses that are defined in an enclosing scope. If you are   familiar with a functional programming language this notion will not be strange.
  902. To return to our directory iteration, what dir must do is return a closure consisting of the iterator function together with an environment for the directory name and for the offset variable, which the iterator function must update each time it is used. In C, because you cannot have local functions, you cannot really talk about upvalues. However, you can mimic them using static variables. These are variables whose scope is limited to the file in which they are defined. We need to define two C functions: one to provide the dir function in Lua, which we will call rdir_read and another to provide the iterator which we will call rdir_iter.  We also need a static variable rdir_buf to provide the buffer to hold the results after the call to XOS_GBPB 9 in the function rdir.  It will be defined by:
  903. static const char rdir_buf[128];
  904. I am presuming that 128 characters is sufficient for leaf names.  All C functions that define functions in Lua take as a single argument a pointer to the Lua state and return an integer denoting the number of arguments the corresponding Lua function returns. So we will have a prototype declaration:
  905.  
  906. static int rdir_iter (lua_State *L);
  907.  
  908. Here is the C source in c.rdir.
  909. /* rdir.c */
  910. #include "lauxlib.h"
  911. #include "lualib.h"
  912. #include "rdir.h"
  913. static int rdir_iter (lua_State *L);
  914. static const char rdir_buf[128];
  915. int rdir_read  (lua_State *L) {
  916.    lua_pushnumber(L,0);
  917.    lua_pushstring(L,lua_tostring(L,1));
  918.    lua_pushcclosure(L,&rdir_iter,2);
  919.    return 1;
  920. }
  921. static int rdir_iter (lua_State *L) {
  922.  int offset = (int) lua_tonumber(L,lua_upvalueindex(1));
  923.  const char * dirname = lua_tostring(L,lua_upvalueindex(2));
  924.  int n = rdir(dirname,rdir_buf,128,offset);
  925.  if  (n == -1)
  926.     lua_pushnil(L);
  927.  else {       
  928.     lua_pushnumber(L, n);
  929.     lua_replace(L,lua_upvalueindex(1));
  930.     lua_pushstring(L,rdir_buf);     
  931.       }
  932.  return 1;
  933. }
  934. Note that rdir_read was not declared as static. That is so that it is accessible elsewhere to be declared as code for the function dir.  This function pushes an initial value of 0 for the offset onto the Lua stack, reads the dirname argument (lua_tostring(L,1)) and pushes that and finally pushes a pointer to rdir_iter and declares that these three items form a closure (lua_pushcclosure).
  935. The rdir_iter function gets the upvalues offset and dirname and calls our low-level function rdir using them, and rdir_buf, as arguments. If it gets a value of -1 then it pushes a nil onto the stack otherwise it pushes the new offset and then pulls it off again with lua_replace to update the upvalue and finally pushes the object name in rdir_buf.
  936. Bar a line or two of book-keeping for registering the new function and for amendments to the makefile to take account of  o.sys and o.rdir, that is it.  The reason that I have not included these details here is that in a real-life situation one hardly ever extends by a single function. One usually extends by a whole library of functions. In the case of dir , for example, it would be sensible to include also functions to return the filetype of a file, and other properties. It is the convention in Lua to implement such libraries as tables, and I wanted to avoid getting into this topic.
  937. An important aspect of the code  presented here is that it lets us iterate over huge directories without incurring any storage penalties, so long as we use sensible code in the body of the loop. This is in contrast to the technique of doing all the calls to XOS_GBPB 9 at once to build up a table of the directory's contents. Big directories will mean a big table, and that might not be appropriate. This way at least gives you the option of parsimony.
  938. I doubt whether I would have been able to implement this little project if I had not got the book to explain what was behind the definitions in the Lua reference manual. You might say that it was an exercise to help my understanding of the book. I was astonished at how little coding was required, in fact. I have written this up to try and give heart to those who think that they too might attempt something similar, whether they be RISC OS programmers who know about C and ARM assembler but not about Lua, or those who know Lua but nothing about RISC OS.
  939. Gavin Wraith
  940.  
  941.  
  942. ÿÿÿÿISSUE1/NEWS/INDEX.HTM Issue 1, News
  943.  
  944.  
  945.  
  946. News
  947. The latest big news from the RISC OS world
  948. With the Wakefield show looming on the horizon there have been no shortage of press releases, so we have cherry picked the ones we think will be of most interest to our readers. You can see all of them, along with the last 2 months comp.sys.acorn newsnet postings, in the NewsNet archive on this issues CD.
  949. R-Comp
  950.  
  951. GrapeVine2
  952.  
  953. We are pleased to announce that after around six months (maybe a little more!) of full-time development, Grapevine 2 is finally ready, and  available now
  954. What is Grapevine?
  955. Grapevine allows you to communicate online with friends, family members, colleagues and so on.  Not only can you have conversations with them online, but you can send/receive files, link out to websites/email etc. Grapevine uses industry standard protocols, meaning that your friends can be using other types of computer (eg. Windows or Mac).
  956. These methods of communication tend to be fragmented, with some people using one service, some people using another and so on.  Grapevine draws several of these protocols into one application, making life for RISC OS users easier.  Grapevine 2 supports IRC communication, MSN instant messaging and ICQ.
  957. Introducing Grapevine 2
  958. Grapevine 2 is a major new release, expanding and extending the softwar
  959. in almost every area.  The single biggest new feature is support fo
  960. ICQ communication, in much the same way as the existing MSN mode.  Thi
  961. means than GV2 can deal with IRC communication, MSN instant messaging an
  962. ICQ all in one program.
  963. However, there's a lot more to GV2 than just ICQ.  All the other functionality been expanded.  For example, file transfers in MSN and IRC have bee
  964. totally revamped, introducing drag'n'drop facilities, percentage complete
  965. bars, and control over the file transmission.
  966. The multi-user facilities (for different family members) have been extended
  967. allowing each user to have fine control over their IRC/MSN/ICQ facilities
  968. including advanced things such as macros, auto-joining channels etc.
  969. IRC has seen a number of enhancements - as well as more flexibility
  970. There's support for auto-joining channels, a revamped, nickname side-ba
  971. which works far more effectively. There's better handling of multipl
  972. servers (for example, you can choose to join different channels on
  973. different servers).
  974. The contact management windows have also been improved, allowing bette
  975. management of your friends' lists, and mail/web link handling has als
  976. been enhanced.
  977. GV2 also supports variable size emoticons, allowing much more flexibilit
  978. in terms of user-created emoticon sets, or using smaller emoticons wit
  979. smaller text sizes etc.
  980. The whole application has developed onwards and upwards since Grapevine 1
  981. Of course, GV2 is subject to the same rolling development that allowe
  982. us to add so many features to GV1 since its original release, which, fo
  983. example, ensured that GV1 coped with the huge changes to the MSN protoco
  984. last autumn.
  985. GV2 is now also 26/32bit compatible, meaning that you won't have to pa
  986. extra for 32bit updates etc.  It has also been tweaked in a numbe
  987. of ways to ensure compatibility with Virtual RiscPC.  GV2 will wor
  988. on any RISC OS 3.5 and higher machine, including RISC OS Select
  989. Adjust and Iyonix RISC OS 5.
  990. Pricing
  991. Grapevine 2 costs 29ukp inclusive of VAT and UK delivery.  Oversea
  992. may have to cover a small amount of extra P&P.  Existing customer
  993. have already been emailed details on upgrading from GV1.  If yo
  994. haven't received information, and believe you should have done
  995. then please contact us by replying to this email, or phoning u
  996. on (+44) (0)1925 755043.
  997. RISCCube Ultra
  998.  
  999. R-Comp Interactive is pleased to announce the availability of a ne
  1000. RISCube family member at the Wakefield 2004 RISC OS exhibition.
  1001. The RISCube Ultra is designed with three primary aims - top fligh
  1002. performance, very low noise (see below for some of the technique
  1003. used), and the usual RISCube style and looks.  We think you'l
  1004. be pleasantly surprised by the price too!
  1005. The RISCube Ultra consists of:
  1006.  
  1007. Brushed aluminum silver RISCube chassis utilising multi-award winning Shuttle technolog
  1008. Top end AthlonXP 3200+ processor with 400Mhz bu
  1009. 1Gb (yes, 1024Mb!!!) of 400Mhz DDR memor
  1010. 160Gb quiet, high speed hard driv
  1011. 128Mb fanless graphics card, with analogue and DVI digital (for direct signal and best picture on flat TFT/LCD monitors)
  1012. High speed DVD drive and CD re-writ
  1013. 7-in-1 media card reader and floppy driv
  1014. Parallel Printer port, 4x USB 2 ports, 3x firewire etc
  1015. Nvidia Soundstorm (tm) high performance digital audi
  1016. RISC OS Adjust (RISC OS 4.39) and WindowsX
  1017. UniPrintVA software for printing to almost any printe
  1018.  
  1019. And the price? 999ukp including VAT and UK delivery!
  1020. About the machine
  1021. RISC OS users choose their operating system because they like th
  1022. smoothness with which it operates and allows them to achieve wha
  1023. they want quickly and easily.  We use it, because we feel it i
  1024. the best, for what we want to do.  The RISCube Ultra i
  1025. designed to give the best hardware combination to run it on!
  1026. The physical components speak for themselves: high speed processor
  1027. coupled with copious quantities of RAM and hard disc space, and a
  1028. graphics card capable of stunning picture quality make thi
  1029. a superb way to run both RISC OS and WindowsXP.  But what make
  1030. this machine so special, is that we have gone to considerable effort
  1031. to ensure low noise.
  1032. By choosing a fanless graphics board, we ensure that the syste
  1033. can be cooled by a single, larger (so it can revolve more slowly
  1034. thereby reducing noise) fan, utilising Shuttle's patented ICE
  1035. heatpipe technology.  Key areas of the system absorb sound/vibration
  1036. and lower noise components also ensure that running noise is kept t
  1037. the absolute minimum.
  1038. The RISCube Ultra uses the latest RISC OS Adjust operating system
  1039. which provides huge, wide-ranging compatibility with old and ne
  1040. software alike, meaning that you can run almost any RISC OS softwar
  1041. on your computer, at speeds usually way beyond those of a StrongAr
  1042. RiscPC.  Make no mistake, this is a fast machine!
  1043. The high performance, huge RAM and hard drive, and 7-in-1 medi
  1044. card ensure this machine is ideal for anyone interested in digita
  1045. photography, video or other graphics/multimedia tasks, an
  1046. viewing these through a high quality graphics card, onto digita
  1047. monitors will probably be a revelation for most users familia
  1048. with the analogue outputs and low image quality of traditiona
  1049. RISC OS machines.
  1050. Advantage Six
  1051.  
  1052. Advantage Six Ltd announce the A75 range.
  1053.  
  1054. Advantage Six Ltd are pleased to announce the A75 range of ruggedised
  1055. ARM-based computers.
  1056. Measuring less than 1.75" x 8.5" x 10" (44mm x 214mm x 250mm), and
  1057. housed in a pure orange (RAL2004) steel enclosure for safety and
  1058. visibility, the A75 is designed to withstand the rough-and-tumble of
  1059. industrial life. It can be transported without fear of damage. Two A75's
  1060. can be fitted side by side into a standard 1U high 19" rack, or it can
  1061. be used as a stand-alone unit.
  1062. The A75 series feature an ARM7500FE processor with on-board video, PS/2
  1063. keyboard and mouse ports.
  1064. I/O Options include:
  1065. paralle
  1066. seria
  1067. US
  1068. networ
  1069. audio I/
  1070. general purpose inpu
  1071. wake-on-LA
  1072. internal integrity monitorin
  1073. watchdog time
  1074.  
  1075. Power options include:
  1076. Single voltage 5
  1077. Single voltage 12
  1078. Power-over-Etherne
  1079. Main
  1080. Internal batter
  1081. Internal UP
  1082. Unregulated D
  1083.  
  1084. Storage Options include:
  1085. FLASH storag
  1086. DVD/CD/CDR
  1087. 2.5" hard driv
  1088. Microdriv
  1089. USB externa
  1090.  
  1091. Choosing options above customers can generate spindle-free builds
  1092. featuring FLASH storage. This results in an almost completely silent
  1093. machine with no moving parts.
  1094. Running RISC OS Adjust or Linux, the A75 is envisaged as a "Rapid
  1095. Solutions Development" system. The ROM-able nature of the RISC OS
  1096. operating system, along with its integrated windowing system and BASIC
  1097. programming environment lends itself to extremely rapid application
  1098. development - solutions may often be derived "in the field" for bespoke
  1099. customer requirements. Based around a similar environment to that of the
  1100. BBC microcomputers used for many years in education, a significant
  1101. proportion of current practicing engineers will find that they already
  1102. have the skill-set to develop simple solutions to complex problems using
  1103. the A75.
  1104. The A75 is the first ARM-based machine to integrate a custom build of
  1105. Embedded RI OS Adjust (4.39). Standard RISC OS Adjust (4.39) is also
  1106. available. The pricing of the A75 is dependant on quantity, options and
  1107. configuration. The A75 is available to OEM customers, direct from
  1108. Advantage Six. Contact thea75@advantagesix.com for further information.
  1109. Example builds of the A75 hardware are available for demonstration, and
  1110. will be shown at the forthcoming Wakefield RISC OS show on 15/16 May at
  1111. Thornes Park Athletic Stadium, Wakefield, along with the A6 and A6+ - a
  1112. PC-based emulated RISC OS platform suitable for larger application
  1113. development for the A75.
  1114. Although a traditional desktop version of the A75 is not envisaged, we
  1115. are considering the release of a "developer" A75 with internal CDRW and
  1116. hard-drive, depending upon customer demand. Any announcement of a retail
  1117. version of this machine would be made via Stuart Tyrrell Developments
  1118. upon release.
  1119. The A75 has a dedicated website at 
  1120. Advantage Six Ltd, PO Box 183 OLDHAM OL2 8FB, 01706 848 600
  1121. Stuart Tyrrell Developments launch A6+ and Confirm as Wakefield Show Prize.
  1122.  
  1123. Stuart Tyrrell Developments are pleased to announce an extension to
  1124. their range of A6 computers - the A6+.
  1125. Running RISC OS Adjust (4.39) on top of Windows XP using the
  1126. VirtualRPC-Adjust emulator, the A6 range offers access to familiar RISC
  1127. OS applications using the latest version of RISC OS. The A6+ builds on
  1128. this range as a premium machine built for the demanding user.
  1129. The A6+ further improves the A6 range with a faster process and
  1130. memory, faster large hard drive, more powerful graphics card and
  1131. built-in 7-in-1 card reader. Keeping the diminutive dimensions of the
  1132. existing A6, the A6+ comes in a restyled case which includes front panel
  1133. backlit LCD status panel, and temperature sensitive cooling.
  1134. In keeping with our design philosophy used with the A6, the
  1135. specification of the A6+ has uprated key components in sympathy with
  1136. each other to increase RISC OS performance by 20-25%. For full
  1137. specifications please see the A6 info website.
  1138. We are also pleased to confirm that we will be offering an A6+ as the
  1139. grand prize to be drawn at the Wakefield 2004 RISC OS show at Thornes
  1140. Park Athletic Stadium this 15th/16th May.
  1141. The A6+ is manufactured by Advantage Six Ltd for Stuart Tyrrell
  1142. Developments. The machine has a dedicated website at 
  1143. Stuart Tyrrell Developments, PO Box 183 OLDHAM OL2 8FB, 01706 848 600
  1144. Castle Technology
  1145.  
  1146. Castle reveals future plans for RISC OS
  1147.  
  1148. Castle today publishes details for the continuing development of RIS
  1149. OS (codename Merlin). Castle's plans include a 6 week period of ope
  1150. consultation with the RISC OS community to assist Castle's managemen
  1151. in allocating development resources through its internal Green Paper.
  1152. Castle states that it is committed to the development of core RISC O
  1153. and desktop extensions. Developments to RISC OS have been allocate
  1154. under the following headings:
  1155. 1. TOOL CHAIN
  1156. Development tools for all operating systems are of key importance an
  1157. Castle realises that keeping the RISC OS C/C++ development suit
  1158. up-to-date is essential. Castle has recently announced majo
  1159. improvements to its C/C++ development suite for RISC OS, which wil
  1160. include support for new features such as "inline assembler" an
  1161. "packed structure support". In the future, further new features suc
  1162. as "instruction scheduling" are also planned.
  1163. 2. CORE RISC OS DEVELOPMENTS
  1164. Castle will continue with core RISC OS software developments to ensur
  1165. that RISC OS is as up-to-date as possible. Recent development work ha
  1166. focussed on paid-for development work for RISC OS licensees, thi
  1167. includes support for further ARM cores and specific produc
  1168. development. This commercially rewarding work has the highest priority.
  1169. 3. DESKTOP EXTENSIONS (codename Merlin)
  1170. Castle will also continue to extend the RISC OS desktop with feature
  1171. under the broad headings that include:
  1172. Filer Enhancement
  1173. Extended Configuratio
  1174. Extended Graphics/Display Capabilitie
  1175. Extended Network Service
  1176. USB Performance and Connectivit
  1177. Audio Inpu
  1178. WIMP Enhancement
  1179. ROM Applications Enhancement
  1180. Bug Fixe
  1181.  
  1182. This list is non exclusive and other appropriate headings may be adde
  1183. as required.
  1184. Merlin will be implemented by creating new or developing existin
  1185. 32-bit modules. To help ensure complete coverage, Castle will trigge
  1186. a 6 week consultation procedure with RISC OS users. Following thi
  1187. consultation period Castle will consider the results. The conclusio
  1188. will be a commitment to a Phased release of enhanced Deskto
  1189. Extensions. This work will have a high priority within Castle and i
  1190. is intended that IYONIX pc users will see the continuation o
  1191. developments with the regular release of Desktop Packs. Many of th
  1192. upgrades will be FREE to IYONIX pc users, but Castle reserves th
  1193. right to implement a charging structure for some features.
  1194. Full details are available at: 
  1195. Castle Technology Ltd, Ore Trading Estate, Woodbridge Road, Framlingham, Suffolk, IP13 9LL, Tel 01728 723200
  1196. RISCWorld
  1197.  
  1198. ÿÿÿÿISSUE1/PD/INDEX.HTM Issue 1, PD World
  1199.  
  1200.  
  1201.  
  1202.  
  1203. PD World
  1204. Paul Brett with the latest freeware and PD releases for RISC OS.
  1205. It seems that RISC OS software authors have been pulling out all the stops over the last couple of months to update a wide range of their software. Which is very encouraging for the RISC OS market as a whole. So what delights do we have for our readers this issue?
  1206. IPPDevice Driver - Dave Lambley
  1207. This is a simple module to allow you to print from RISC OS directly to an IPP (Internet Printing Protocol) printer server over a network. IPP is a relatively new Internet standard. It is supported by:
  1208. The CUPS server (for UNIX
  1209. Windows 200
  1210. Some networked printer
  1211.  
  1212. CUPS will probably be the one of interest here. CUPS is a printer server that runs under UNIX. It is capable of driving a wide range of printers, both connected to the server directly and over a network. By using this module, a UNIX server running CUPS and the RISC OS PostScript Printer Drivers, you can suddenly use a huge range of high-quality printer drivers.
  1213. This module probably doesn't work on the Iyonix yet, but it should work on any other RISC OS with a working TCP/IP stack.
  1214. KClock - Kevin Wells  
  1215. It's a simple desktop clock in a window, handy for those that don't like cluttering up their icon bar with the long Alarm icon. KClock was written using DrWimp and is a good example of how a small application can be quickly generated in BASIC.
  1216.  
  1217.  
  1218. KClock
  1219. MakeAlias - Malcolm Ripley  
  1220. Makealias is an application that will create aliases of files, folders and applications. You may have seen the idea of alias's under Windows, where you can have a "Shortcut to" an application or a file, MakeAlias offers the same for RISC OS. It does this by creating an application with a name equal to "!=" plus the original.  In the case of applications the "!" is replaced with a "!=". If an alternate name is used then the alias will be prefixed with "!+" instead of "!=".
  1221. There are 3 ways to create an alias:
  1222. Drag a file, directory or application to the Alias Icon on the Icon bar, drag the icon from the window to the required locatio
  1223. Open up the create alias window from the icon bar menu, drag a file, directory or application to the window, drag the file icon from the window to the required locatio
  1224. Open up the create alias window by clicking on the iconbar icon and then drag a file, directory or application to the window, drag the file icon from the window to the required locatio
  1225.  
  1226.  
  1227.  
  1228. Make Alias
  1229. Nettle - Nettle Developers  
  1230. Nettle is the terminal emulator and telnet client for RISC OS. It uses the ZapRedraw module for speedy display and is a fast, clean native implementation. Nettle supports most common terminal types, including vt100, vt102, vt220 and xterm terminal emulation in full colour, along with some more exotic features which you might not expect from a terminal emulation program, such as URL launching - just double click on any URL that is displayed in a Nettle window and it will launch in to your browser. Nettle also has an ANSI Task task window feature, which allows unix programs such as ssh, lynx, BitchX, ncftp2 and nano with ANSI terminal interfaces to be run natively on RISC OS for the first time.
  1231. Nettle is still under development with work being actively carried out by five developers. Alex Macfarlane Smith started the project, initially writing a very well featured version of Nettle in BBC BASIC. Unfortunately, this was rather too slow to be really useful, so after some encouragement, the move was made to a C-language based development. This is when the other developers started work. Nettle is built with the StubsG C libraries, to allow it to run unmodified on both 26bit and 32bit RISC OS variants. Development is mostly done on the latest release of RISC OS Select but we support everything from RISC OS 3.1 through to RISC OS 5 running Internet module version 4.xx or 5.xx. Nettle is also supported and tested with VirtualRPC-SE. If you're not running Select 2,3 or Adjust then you'll also need the SocketWatch module.
  1232.  
  1233.  
  1234. Nettle
  1235. PowerBase - Derek Haslam  
  1236. We have covered PowerBase extensively in RISCWorld in the past (and again in this issue), but this is the updated version 9.20 which exists in two functionally identical variants. v.9.20DA is suitable for RISC OS 3.5 or later. v.9.20SH is suitable for all versions of RISC OS from 3.1 onward.
  1237. The difference between the two lies only in the way in which they manage their memory requirements. 9.20DA makes extensive use of dynamic areas, a practice now deprecated in some quarters. Nevertheless, this is the version I recommend to all users of RiscPC, A7000, Iyonix etc. 9.20SH uses instead the sliding-heap module (as have all versions of Powerbase prior to 9.00) but this module has now been made 32-bit compatible by Christopher and Harriet Bazley.
  1238. There have been several enhancements since the last version. Indexes are used much more extensively to speed up report creation. This feature can in many instances make use of multiple indexes and operate on multiple targets in search formulae. In earlier versions of Powerbase this feature had severe limitations. Search formulae can query data in any column of a validation table provided the table is linked to a field which appears in the search formula. (It was always possible to include any or all columns of a table in the print selection, but querying has not previously been possible. The manual (in all formats) has been updated to comply with v.9.20
  1239. The tutorials now include important actions such as creating and reformatting a database and re-definition of the primary key. Both manual and tutorials are available in Impression Publisher, Ovation Pro and PDF formats. The tutorials are also available as a plain text file with supporting drawfiles.
  1240. For anyone with some experience of programming in BASIC it is fairly easy to add non-standard features to Powerbase and to place on the tool-pane, keypad or record window special buttons to control these features. This facility has been present in Powerbase for several years (in fact it has been in regular use in one database application for about seven years) but has not hitherto been described.
  1241.  
  1242.  
  1243. PowerBase
  1244. SpecialFX - David Pilling and Richard Hallas  
  1245. SpecialFX is a desktop enhancement module which provides three basic functions:
  1246. SpecialFX causes calls to the Draw module to be redirected to Computer Concepts' GDraw module, thus providing an anti-aliased display in applications that make use of vector graphics (such as Draw, Draw Plus, Ovation Pro etc). Anti-aliasing is applied only to screen output; the Draw module continues to be used for printing. This option is enabled for all applications by default
  1247. SpecialFX causes outline font painting operations to be performed with background blending (a feature introduced in the RISC OS 3.7 font manager) in applications which do not provide support for this feature (such as the Impression family of DTP programs). Background blending is applied to screen plotting only; printing is not affected. This option is enabled for all applications by default (though it will only work on machines running RISC OS 3.7 or later)
  1248. SpecialFX can cause all printing to occur from low memory in applications which use dynamic areas. This provides a work-around for a problem in certain printer drivers, such as those for Calligraph direct drive laser printers, which do not work correctly with particular applications. If you find that some items vanish when printing (particularly text embedded within Draw files), enabling SpecialFX's low-memory printing feature should cure the bug. Low-memory printing applies to printing operations only, and does not affect screen output. This option is disabled for all applications by default. Enabling it globally should not have any adverse effects, even with printers that do not suffer from the bug
  1249.  
  1250.  
  1251.  
  1252. Setting up SpecialFX
  1253. StopCaps - Dan Ellis  
  1254. This is a very handy little module that can be put in your predesk directory, it serves one simple purpose, it stops the CapsLock key working unless the ALT key is also held down. This prevents users accidentally hitting the CapsLock key instead of the Shift key and then typing 3 lines of capitals before noticing.
  1255. Signing off
  1256. I will see you again in July for the next issue of RISCWorld.
  1257. Paul Brett
  1258.  
  1259.  
  1260.  
  1261. ÿÿÿÿISSUE1/POWERBASE/INDEX.HTM Issue 1, PowerBase
  1262.  
  1263.  
  1264.  
  1265. PowerBase
  1266. Derek Haslam introduces the latest changes to Powerbase.
  1267. Powerbase 9.20DA is the latest version of what was first introduced in March 2002 under the provisional name PbaseDA. It is compatible with all versions of RISC OS from 3.5 to 4.37 Since it uses dynamic areas it will not work with RISC OS 3.1 - but v.9.20SH will. The two versions are functionally identical and have many features which are not present in earlier versions and these differences are described on this page. All new topics are described in the latest version of the User Manual which has been completely updated to cover these features. The new manual, together with an expanded version of the Tutorials manual, is available for download in Impression Publisher, Ovation Pro, PDF and HTML formats.
  1268. The following descriptions of new features are extracted from the latest version of the user manual.      
  1269. Altering the record format
  1270. Version 9.20 of Powerbase introduces far-reaching changes in the way the record format is edited. Earlier versions caused confusion in the minds of many users by having two choices on the Utilities submenu which did similar things. Adjust format enabled minor changes such as moving fields about in the window, renaming fields and the addition or removal of External, Button, and Scrolling list fields. New record format was needed in order to make any change which required the Database file to be rebuilt, i.e. addition or removal of fields (other than those mentioned above), changing the length of fields, and swapping or renumbering fields. Users no longer need to decide whether an alteration will require a rebuild of the Database file since Powerbase can now make such a decision by itself. The two choices have therefore been replaced by a single menu choice: Alter format.
  1271. The process has been improved in other ways too. After changing the structure using older versions it was often found that self-calculating fields no longer worked until their formulae had been re-entered. Users were warned against changing both the tag and number of a field (otherwise data could end up in the wrong field). Sometimes indexes needed rebuilding. Under v.9.20 these annoyances should not occur. Close attention has been paid to providing the means to undo format alterations and revert to the database as it was before the changes were made (although common prudence suggests that you should always keep a backup copy of any database on an alternative medium such as another hard drive, a floppy disc or a CD ROM).
  1272. The best way to acquaint yourself with the way things work is to experiment. Suppose we have a database called !Addresses. When you choose Alter format from the iconbar Utilities submenu the following things happen
  1273. An ordinary directory called Addresses! is created (unless one exists already). This unusual naming convention avoids possible clashes with any pre-existing directory or file called Addresses. The new directory is created in the same directory as the database !Addresses
  1274. An application directory called !Undo01 is created inside Addresses! This initially contains a !Run file and a copy of the Form file from !Addresses. If the database uses validation tables there will also be a copy of the Link file. If Computed fields (or certain other specialised types) are involved then the Calc file is copied too. Many simple databases do not have either a Link or a Calc file. Other objects may be added later
  1275. The record window is displayed in "design" mode with the blue layout grid
  1276. A message explains what to do next and informs you that the originals of any altered files will be placed in !Undo01
  1277. You can now go ahead and make changes ad libitum. Rename field tags if you wish, add new fields (including ones inserted before the last-numbered one in the record), delete redundant fields, lengthen or shorten fields, increase or reduce the number of columns (and the widths of columns) in Scrollable lists etc. etc. When you have finished gleefully messing up the previous record structure, bring up the main menu and choose Quit design.
  1278. During the foregoing activity Powerbase will have been keeping track of certain things which it needs to know so that the changes can, if necessary, be undone and it will now inform you of changes which might result in the modified database containing less data that the original. Deleted fields are an obvious example, but you will also be warned about shortened fields and Scrollable lists with fewer or narrower columns than in the original. If you choose to proceed despite these warnings the restructuring will take place and you should end up with exactly what you asked for but the !Undo01 directory will now contain copies of any files which have been changed by the reformatting. The addition to !Undo01 which you will most commonly see is a copy of your original Database file, but there might also be copies of the Indexes directory or of directories holding External field and Scrollable list data.
  1279. One file which definitely will be there is an Obey file called !Restore. You might like to look at this very important file, which contains the instructions for putting everything back as it was.
  1280. Wish you’d left well alone? Want to go back? Just double-click on !Undo01. All your renamings will be reversed and all the saved original files copied back. The restored database, which should look exactly as it did when you started, is then re-opened for you and !Undo01 finally deletes itself!
  1281. Why is the "undo" application called !Undo01, not simply !Undo? You will see why if you start another session of alterations beginning where you previously left off, that is by again choosing Alter format without having run !Undo01 which is still sitting there in the Addresses! directory. A new application directory called !Undo02 is created. A third alteration session will result in !Undo03 and so on. This allows you to change your databases a little at a time, assessing the effect of each alteration before proceeding to the next. The most recent alteration session is undone by running the highest-numbered undo application, the penultimate session is undone by running the next-highest etc. If, after a lengthy series of alterations, you want to go right back to the beginning you should run the undo applications in reverse order. Do not simply run !Undo01 because it only "knows" about what you did in the first session and the database structure might by now be very different.
  1282. How many undo applications can you have? This depends on the configured maximum for auto-generated filenames. The value will be found in the Config file beside the token MaxNames and the default is 10. After !Undo10 you will be informed that this is the highest-numbered name and subsequent sessions will use (and keep overwriting) !Undo. Deleting some or all of the existing undo applications (starting with the highest-numbered) allows auto-name-generation to resume.
  1283. Subsidiary indexes and printing speed
  1284. In many cases Powerbase can make use of subsidiary indexes to make reports complete much more quickly. This feature has existed for a long time but was, prior to v.9.20, very restricted. It has now been greatly extended and requires a detailed explanation. You might first like to try the following simple exercise with the Elements database.
  1285. Create an index on the Group (GP) field, select the element name only, and create a report using the search formula:
  1286. GP=T
  1287. If you do this first with the Indexes button on the Query panel selected (default), then with it deselected, you will notice a difference between the times taken. Use ADJUST, not SELECT to click the Print button on the Match window so that the window remains open and you can see the actual times. On a StrongArm RiscPC the above test takes about 0.25 sec with Indexes selected and about twice as long with it deselected.
  1288. This might not sound like a difference worth bothering about, but remember that Elements is a very small database; you are printing 31 elements out of only 103. If you were targeting a similar number in a database containing thousands of records the difference would be very marked indeed; a factor of 10 is common and a factor of 50 or more might be achieved in some instances.
  1289. Here’s what happens in that example. Powerbase recognizes that GP is indexed so, instead of going through all the records, it jumps straight to the first occurrence of "T" in the subsidiary index and prints records sequentially until the key is no longer "T". There is one small disadvantage which becomes obvious if you try something like GP=1,2,3 which is equivalent to GP=1 OR GP=2 OR GP=3. The names aren’t all in alphabetical order, which they will be if you repeat the exercise with Indexes deselected. The group 1 elements are found first and duly listed in alphabetical order (caesium to sodium). Group 2 element (barium to strontium) then follow and, finally, group 3 elements (aluminum to thallium). You can, of course, click MENU over the list and sort the names so it’s not much of a disadvantage, but attention is drawn to this point because there may be situations where you want to avoid it by deselecting Indexes
  1290.  
  1291. Indexes can not be used in the way described when
  1292. a hyphen is used to specify a set of contiguous fields (tagX-tagY=target
  1293. the comparator between tag and target is anything other than =, >, >=, <, <=. You can’t use {, }{ or <>
  1294. the contents of validation tables are being interrogated (see 5.9
  1295. search elements linked by OR involve a non-indexed field. (It makes no difference whether the OR is explicitly stated or implied, i.e. by using a comma-separated list of field tags.
  1296. If any of the above situations arises Powerbase will refuse to use the speed-up methods even though Indexes remains selected. You can always tell when the feature is active because the numbers of the indexes used appear briefly in the small square to the right of the writable icon in the Query panel. If no number appears then the entire database is being scanned.
  1297. To clarify the last case (above), consider two fields, F1 and F2, both of which are indexed, the indexes being numbered 1 and 2 respectively. The search formula:
  1298. F1=wibble OR F2=wibble
  1299. will first search index 1 for all occurrences of "wibble" in F1, then search index 2 for all occurrences in F2. If F2 is not indexed Powerbase has to search the whole database for occurrences of "wibble" in that field, so the use of an index for the other field is of no help at all. No such problem would occur if the search formula were:
  1300. F1=wibble AND F2=wibble
  1301. because all records in which F2 is matched must also be ones in which F1 is matched, so index 1 would be used.
  1302. For indexes to be used as described they must meet the following criteria
  1303. If the index uses a multi-part key the field being tested must provide the first part
  1304. The characters used in the key must come from the first word of the field
  1305. The characters must come from the left of the word
  1306.  
  1307. You might sometimes see 0 appear in the index-number icon, indicating that the primary key index itself is being used in this special way. This will happen if the field being targeted is a primary key field which meets the above criteria.
  1308. Testing validation table contents in search formulae
  1309. v.9.20 supports an extension to the search formula syntax which enables tests on validated fields to operate on table columns other than the one linked to the field. The following, trivial example will help to clarify the concept. In the Elements database the field GP is linked to column 0 of a validation table called Group. Column 1 of this table holds the names of the periodic groups, e.g. "Halogen" for group 7. Consider the search formula:
  1310. GP/1=Halogen
  1311. The "/1" suffix to GP tells Powerbase not to test the actual value present in GP but, instead, to find that value in the linked column (column 0) of the table and look at whatever is on the same row in column 1 to see if it matches the string "Halogen".
  1312. A report produced using the above formula would contain exactly the same records as one produced simply with GP=7 because there's a straightforward one-to-one relationship between the two columns; neither contains any duplicated entries. That's why the example is trivial. For a non-trivial use consider a database of classical music in which we have fields COMP and WORK which hold the composer's name and the work's title for each record. Suppose COMP is linked to column 0 of a validation table which has three additional columns containing Nationality, and Birth and Death dates for each composer. Each of columns 1-3 would contain entries repeated several times - probably many times in the case of Nationality. Can we find out quickly which works (if any) were written by French composers born in 1880? Yes, by using the formula:
  1313. COMP/1=France AND COMP/2=1880
  1314. And which composers have a centenary or bicentenary in 2004?
  1315. COMP/2,COMP/3=1804,1904
  1316. which will, admittedly, list every work by composers who were born, or died, in 1804 or 1904 so the same composer might make many appearances in the report. Does it really matter?
  1317. Currency fields
  1318. Previous versions of Powerbase had no convenient way of specifying currency units. Provided no calculation on a field was required you could, of course, use an Unrestricted type and include the £, $ or ¤ (Euro) symbol within the field. Most currency fields do participate in calculations, however, and must therefore be defined as Numeric (fixed point, 2 places). The only option then was to place the currency symbol in the descriptor, which isn't very satisfactory since it won't appear in reports.
  1319. v.9.20 handles this by providing radio buttons which may be selected to prefix the number in a fixed point field with the required currency symbol. Calculations on such fields work correctly and, since the currency symbol is part of the field content, it appears in reports.
  1320. New field types
  1321. Two new field types, Capitalise first and Capitalise each have been added to the Editable class. The first of these simply forces the initial letter of the field to uppercase and the remainder to lowercase. The second is perhaps more useful. Left to itself it forces the initial letter of each word in the field to uppercase. This might not be quite what you want; in titles etc. it is usual to capitalise each word with the exception of relatively insignificant words such as definite and indefinite articles, conjunctions, prepositions etc. This is taken care of by means of a comma-separated list, e.g. "the,a,an,of,to,for" which is held in a text file called CaseExcept and placed in the database directory.
  1322. Even with a CaseExcept file you will occasionally encounter words which you want to be left "as is". This can be achieved by preceding them with a hard space (Alt-space, character 160).
  1323. Derek Haslam
  1324.  
  1325. ÿÿÿÿISSUE1/PROART24/INDEX.HTM Issue 1, ProArtisan24
  1326.  
  1327.  
  1328.  
  1329. ProArtisan24
  1330. Geoffrey Dean reviews ProArtisan 24
  1331. ProArtisan has a history that's nearly as old as Acorn's 32-bit platform itself, and it actually predates RISC OS. Long-term RISC OS users might enjoy a brief wallow in nostalgia, so let's start off with a short history lesson.
  1332. Art history
  1333. The original version of the package, Clares' Artisan, was one of the earliest commercial Archimedes applications, dating from 1987 and running under the Arthur operating system. This original package, which cost £40, was a full-screen mode 12 painting package. In other words, it could only cope with sixteen colours in a TV-style (tall pixels) 640×256-resolution screen mode: a fact that brings home the extent to which computer graphics have progressed in only a relatively few years.
  1334. ProArtisan arrived less than a year later; its main justification for the 'Pro' prefix was the fact that it worked in 256 colours (but still at the same resolution). The price was 'Pro', too: a wallet-busting (certainly for the time) £170!
  1335. Artisan 2 (not 'Pro', so back to 16 colours) ran under RISC OS, but still in full-screen mode, and arrived in late 1989 at a price of £60. It wasn't until 1994 that the next major version, ProArtisan 2 (£135), came along and used the RISC OS desktop 'properly', with the ability to create multiple arbitrarily-sized pictures and edit them in windows. The rise of CD-ROM and the arrival of the Kodak PhotoCD format led to the production of a special edition later in the year, ProArtisan 2 CD (£160), with specific added support for PhotoCD discs.
  1336. It was the arrival of the Risc PC, with its superior video hardware, later in 1994 that allowed ProArtisan to become what it was destined to be: a true-colour painting and image-processing package. The appearance of the new machine led to a sudden explosion of art packages (Photodesk, DA's Picture, ProArtisan 24, Studio 24 and Revelation imagePro 24 to name but five), so ProArtisan 24 (£170) faced some stiff competition. Nevertheless, it held its own and was always well regarded, if not considered the best of the bunch.
  1337. After that, development of ProArtisan took a long rest. There were a few minor updates, including a StrongARM compatibility release, but that was the end of significant development until the package's recent acquisition by ProAction and APDL. Following some extra work, a new version of ProArtisan 24 was released a few weeks ago which is 32-bit neutral and hence compatible with the Iyonix. So, once again, ProArtisan runs on the latest RISC OS hardware and, to prove the point, this review has been written on an Iyonix, running ProArtisan 24 natively.
  1338. A tour of the gallery
  1339. This latest edition of ProArtisan 24 comes on a single CD rather than the multiple floppies of its predecessor, but existing stocks of the original Clares packaging are being used, so you still get the nice glossy box and commercially printed manual: a fact that makes the new asking-price of just £39 (fully inclusive in the UK; overseas add £2 P&P) particularly good value. The latest version of the software runs on all modern machines, of course (StrongARM RISC OS 4, XScale RISC OS 5 and VirtualAcorn emulators), so potential buyers can think in terms of getting the package, as new, for a £130 discount compared with its price ten years ago!
  1340. It is hoped that the package will continue to be developed, too; certainly there is talk of supporting the PNG graphics format and adding further new features. For the moment, though, the current release (I have been testing version 1.20; Clares' last release was 1.10) is functionally identical to its predecessor; the main raison d'être for the present release is to bring the package to Iyonix users in native format. Note that upgrades are available from previous versions (£29 from the Clares version, £12 from APDL/ProAction's previous CD-based re-release of the original).
  1341. In other words, if you have ProArtisan 24 already, you should know all about the features I'm going to discuss, so you may wish to skip down to the 
  1342. PhotoCD
  1343. Let's get perhaps the most obscure feature out of the way first. As mentioned briefly in the history lesson, ProArtisan is one of the few packages for RISC OS with specific support for PhotoCD discs. PhotoCD looked as though it was going to be an important format in the mid-90s, and it was quite an interesting idea at the time: store your photos on a CD at multiple resolutions for each picture, and either use them on a computer or view them via a special player on your TV. Unfortunately no-one could have foreseen the imminent arrival and massive take-up of digital cameras only a couple of years later. PhotoCDs were quite time-consuming and fairly expensive to produce, and the fact that a special player was needed to view the discs on a TV helped to ensure that only the keenest amateur photographers bothered with PhotoCDs. The format never took off, and with today's computers and digital cameras it's actually much easier to home-produce photographic CDs of a much better quality, and containing far more pictures, than PhotoCD could ever offer.
  1344. But there we are; that's progress. Hindsight is a wonderful thing, and the fact that Clares invested effort in supporting what looked like it was going to be an important and interesting format was commendable at the time. As it stands, those of us who actually dabbled with the PhotoCD format have a reason to buy ProArtisan, as it makes our discs more easily accessible on our new Iyonix machines.
  1345. I speak from experience: I have just one PhotoCD, a disc that I compiled from a holiday abroad in 1994, and I felt pleased with it at the time, though looking at it again I'm struck by how poor quality Kodak's own scans appear to be; had I taken the pictures with the digital camera I have today, they'd have been much better quality. But that's beside the point...
  1346. ProArtisan offers three items on its icon bar menu for dealing with PhotoCDs: Show CD Album, PhotoCD Info and Eject CD. In a sense, perhaps the most interesting of these is the info window, as it displays information about the disc which is not easily available via other sources. The album window shows the pictures on the disc in groups of ten at a time, and you can page between them and then double-click one to load it.
  1347.         Browsing a PhotoCD album
  1348.  
  1349. PhotoCD images are stored in multiple resolutions, and you can choose which size to load, as well as optionally cropping an area from the picture at load-time, which is a useful feature. The two smallest standard image resolutions are not offered, but that's no loss as they're too small to be generally useful.
  1350. The PhotoCD Album window is a nice idea, but perhaps not entirely to my taste. On the one hand it allows you to browse a PhotoCD's contents quickly and easily and gives direct access to individual pictures. But on the other hand I wasn't too keen on the need to view only ten thumbnails at a time; all that flicking between pages seemed rather fiddly on a fast machine with a big monitor, and is probably an example of how a software design decision was influenced by the technology of the time (1994) and is less well justified today. I would have liked to be able to view more pictures at once in a larger window. I also didn't care for the fact that the album closes whenever you load a picture, so if you want to load more than one, you must go back to the menu to reopen the album.
  1351. I did encounter a couple of bugs in this area of the software; the sorts of things that suggest (not too surprisingly) that this aspect of the program has not undergone much testing. For instance, whenever the PhotoCD info window is opened, ProArtisan feels the need to say "AARGH" in an error window which you then have to close, though there are no ill-effects and the feature works perfectly. There were other minor points, but hopefully they will be fixed in the next update.
  1352. Overall I have to admit that I prefer Photodesk's handling of PhotoCDs: Photodesk opens a 10×10 index page of all the images to let you view them all at once, and you just double-click the one(s) you want to load. But ProArtisan handles PhotoCDs in a reasonably helpful and useful way at a much lower budget, so if you happen to be a sometime PhotoCD buff, it's a useful application to have for this feature alone.
  1353. Painting by numbers
  1354. ProArtisan is primarily a painting package: it was originally designed for the creation of original artwork, and although it has grown to cover image processing and photo retouching as well, artistic creation remains one of its primary purposes.
  1355. Many types of image can be imported (actually, ChangeFSI is used to handle the conversions), but ProArtisan works primarily with sprites. They can be of any reasonable size, and there is specific support for another old Clares package, Virtualise, to give access to virtual memory. Unfortunately, Virtualise is not available for the Iyonix; though given the amount of memory available to Iyonix users, this is much less of a concern than it would be to Risc PC owners.
  1356. ProArtisan is very much a 'modal' program: it has a small toolbox that attaches to the current window, and this offers Painting, Drawing, Sprites, Input-Output, Process, Palette and Frisket buttons, plus a few other controls (zoom, single-stage undo and external utilities). The most important of those buttons (Painting, Drawing, Sprites, I/O, Process and Frisket) all have their own individual menus, so ProArtisan is rather unlike other RISC OS applications because its main window menu changes completely depending on the tool you're using at present.
  1357. In Painting mode you have access to quite a wide range of styles: watercolour, airbrush, chalk, charcoal and so on. These are all chosen from the menu, as are several other more esoteric styles like a rainbow mode for the chalk (which cycles through all the shades in the current palette) and a texture mode that allows you to paint with sixteen different textures.
  1358. There are other special options on the menu too: cloning allows you either to paint a copy of part of the current image or a sprite from the program's sprite pool (in various ways), and there's an FX brush which allows a range of image processing filters to be applied with the brush. A handy undo brush also allows you to 'unpaint' the last action.
  1359. All of these styles are painted with a single brush, whose attributes (size of solid centre and graded/colour opacity) can be set via a single dialogue window. Each style can have its own set of brush attributes (e.g. the watercolour brush and airbrush can use different settings which will be remembered as you switch between them), but they're all set via the same dialogue.
  1360. Drawing a pitcher?
  1361. The Drawing mode gives access to the usual range of vector shapes: lines, curves, rectangles, ellipses and outline font text (just as in Draw), plus regular polygons (which you don't get in Draw). These can have the usual range of styles applied to them (filled or not, stroked or not, and with round, square or bevelled joins). Alternatively, though, you can paint vector shapes using the brush styles from Painting mode. Placing shapes works much as it does in Draw, and there's even a pixel-based grid that you can snap shapes to if you wish. The difference is, of course, that once a vector path is fixed and rendered to the canvas, it ceases to be editable.
  1362. Undoubtedly the most powerful facility available to the Drawing mode, though, is the Path dialogue window. This provides a pool of drawn paths: for instance, each time you create a new line of text, it is automatically added to the path pool. However, you can add new objects to the pool directly yourself, including complete Draw files, not just single objects. These can then be rotated and scaled as you wish before being committed to the canvas in whatever rendering style you want to use, and because the paths remain present in the pool, you can use them multiple times.
  1363. The next illustration shows a few of the things discussed so far: painting in the rainbow chalk style, but using the same vector path several times (with different palette settings). The vector path was created automatically simply by entering a piece of text (once).
  1364.         This example shows how a single vector path, created by entering text in Drawing mode, can be used to produce different effects with brushes (here, the rainbow chalk brush) from Painting mode
  1365.  
  1366. A dip in the sprite pool
  1367. Just as there is a path pool that stores vector paths, ProArtisan provides a sprite pool; indeed, there's a tool devoted to it (Sprites mode). You can cut sprites out of a picture either by drawing a rectangle around the area you want, tracing an area freehand, or using a magic wand tool. The latter has adjustable thresholds and tries to extract the piece of image you click in a sensible manner. Once you have a sprite in the pool, you can use it as a brush, fill an area with it or apply it to the canvas in a distorted shape, perhaps to achieve a perspective effect. Sprites can also be rotated and scaled, and plotted around a sphere (tiled if necessary). As with the paths pool, the sprite pool can hold many images and they can be manipulated in various ways before placing them on the canvas. Numerous ways of pasting sprites onto the canvas are provided, from simple solid and translucent pasting to fades and feathering.
  1368. A colourful background
  1369. A mention must be made of ProArtisan's colour picker, as it's somewhat unusual and hints at the program's origins as a 256-colour art package.
  1370. In some ways, ProArtisan's colour picker can be thought of as a 'palette pool', in the same sort of class as the path and sprite pools. The point is that, although it's a full 24-bit-colour painting package, ProArtisan organises its colours into palettes of 256 colours each. There are 32 palettes by default, though plenty more are provided on disc and you can modify palettes very easily.
  1371. The palette-mixing facilities provided by the Colours window are actually very powerful. Any of the 256 shades can be defined directly by using the standard RISC OS colour picker, but dragging between two colours will instantly create a blend, and colours can be reordered by dragging, so creating smooth blends between any number of colours is a quick and easy matter. Sixteen tints of the currently selected colour are also shown in the window, as well as five further complementary shades from around the colour wheel. These are all excellent facilities for artistic work, and make it genuinely easy for a creative artist to get at just the colours he might want with minimum fuss, so the picker strikes me as one of the best-thought-out aspects of ProArtisan 24.
  1372. It's perhaps just a bit of a shame that only 32 palette slots are available: you can redefine any palette at any time, or replace a palette by loading a new one from disc, but you can't have more than 32 available at once. It's also a great pity that individual palettes can't be saved easily; you can save your palettes to disc, but only all at once, not individually. I can see no good reason why there isn't a 'save current palette' option, and I think that this would be a highly desirable feature for a future upgrade. As things stand, 32 palettes are defined by default but you have to replace existing ones (and save new defaults) if you want to use your own, whereas ideally you should be able to have extra palettes in addition to the existing presets.
  1373.         ProArtisan's Colours window
  1374.  
  1375. Frisket him, officer
  1376. So much for painting and drawing; one of the most important options in any bitmap graphics package is its ability to use a mask.
  1377. ProArtisan calls its mask a frisket. It's an 8-bit mask, which means that opacity effects are possible, not just simple on/off masking. An icon in the toolbox toggles between 'no frisket', 'frisket active' and 'create frisket' modes, so it's easy to flick between states. As with other such programs, it's easy to manipulate the frisket/mask by painting to it directly, adding your last action to it, inverting it and so on. Overall, it does what you'd want any mask to do: allows you to paint to certain areas of the canvas whilst protecting other areas from being affected.
  1378. Frisket creation is done directly in Painting mode. In fact, when you're in Painting mode and the frisket icon is toggled into 'create' mode, the regular Painting menu is replaced with a Frisket menu, so that's yet another fairly obscure modal operation to contend with.
  1379. Process my application
  1380. ProArtisan has a dedicated image processing mode, which is separate from the FX brush in Painting mode, though they both share a common dialogue. In effect, the FX brush that can be used when painting is just one of a much wider selection of effects that can be found on the Process menu. However, anything done in Process mode applies to the whole image. Luckily, though, the frisket is taken into account, so if you only want to process part of your image, you must define a frisket to protect the parts of the picture that you don't want the image processing routines to touch.
  1381. The Process menu actually has several options for dealing with the frisket (in addition to those provided on the dedicated Frisket menu that can appear in Painting mode; confused yet?), but let's not waste time worrying about those. The most important and interesting options to discuss here are the Filters and Effects submenus.
  1382. These provide the kinds of options that you would expect from any image processing application, though perhaps lacking the range provided by some other software. On the whole, the approach seems to have been to provide facilities that are actually likely to be useful from an artistic point of view, rather than overburdening the program with an excessive number of highly esoteric options.
  1383. So, the Filters menu provides just ten basic functions, but they're all pretty useful: Inverse, Tint, Lighten, Darken, Cutoff, Contrast, Anti-Alias, Remove Dots, Colour Shift and Grey Shift. Of those, all but Inverse, Tint and Anti-Alias have dialogue boxes that allow you to alter their strength of application or determine what they do in some other way.
  1384. As for the Effects menu, that contains a further nine facilities which fall more into the 'artistic' category: Emboss, Sphere, Find Edges, Halftone, Sharpen, Pattern, Generic, Block and Warp. Some of these are significantly more useful than others, but certainly the most flexible is the Generic option. This provides an editable matrix filter window: there are sixteen useful presets (including sharpen, emboss, anti-alias etc.), but you can edit them all and create your own. This Generic filter window is the same as that provided by the FX brush in Painting mode.
  1385. Overall, whilst ProArtisan doesn't provide a huge range of filters and effects, the ones it does supply are indeed useful, and should be helpful for various purposes, from photo-retouching through purely artistic effects to specialised purposes like creating tiled backdrops for the desktop or Web pages.
  1386.         A quick and simple image processing example: the Block effect was applied to the image, and then Sharpen, to produce a 3D mosaic effect (the original photo is shown at a small scaling in the overlaid window)
  1387.  
  1388. I/O, I/O, it's off to work we go...
  1389. ProArtisan is distinctly curious in that it requires you to switch into a separate mode in order to be able to save anything.
  1390. Once in Input-Output mode you are permitted to save your work as a sprite. RISC OS Squash compression may be applied at the same time (and ProArtisan will also load squashed files without requiring you to unsquash them first). Sprites may also be exported in fewer colours (32 thousand or 256) and at lower resolutions.
  1391. A JPEG save option is provided, along with a definable quality setting, and you can save the contents of your sprite pool and your entire collection of palettes. As mentioned above, it is frustratingly not possible to save individual palettes, and it also appears not to be possible to save the contents of the path pool.
  1392. The other option provided in I/O mode is a printing facility. This uses the standard RISC OS printing system, of course, and allows you to set the scale of your image and its position on the paper, with convenient 'centre' buttons being provided.
  1393. Assessment
  1394. As was mentioned near the start of this review, this new release of ProArtisan is functionally identical to the final version produced by Clares. As such, ProArtisan must be viewed as an updated reissue of software that was designed over a decade ago, when computer graphics were not as advanced as they are now. Indeed, ProArtisan grew out of a 256-colour painting package. Digital photography had not come along (though manipulation of PhotoCD images pointed in its general direction), and the expectations surrounding a computer art package were quite different back then. These considerations must all be borne in mind when assessing ProArtisan's place in the grand scheme of things.
  1395. At the time of its release, for instance, ProArtisan's modal interface no doubt seemed like a very good idea. The program was clean and uncluttered, and users praised its simplicity and ease of use at the time. Now, though, with the benefit of hindsight, I'm not so sure that I like the interface any more. Whilst ProArtisan is by no means hard to use, it all seems a bit too compartmentalised. The need to switch between modes, and the absence of easy access to common tools like a range of different brush sizes (a standard feature in all modern art packages on other platforms), means that frequent trips to the brush size dialogue are necessary, and that's only one example of a problem that's quite widespread.
  1396. Moreover, there is what might be called 'feature leakage' between modes, in that you can paint with drawn paths, use sprites that are housed in the sprite pool in different modes, and so on... and yet to create and alter those sprites and paths, you have to switch to the appropriate tools.
  1397. It's quite hard to describe the problem concisely, but the gist of it is that, whilst many of the program's features work well together, they're segregated out into separate modal tools, and the distinctions often seem arbitrary. This all makes it less than obvious how certain features can be used together, and limits the program's flexibility in some ways whilst also giving an impression that there's less flexibility than the program does actually provide.
  1398. This is not really a criticism of ProArtisan's capabilities as such: it can do lots of things, and is capable of producing good results. However, its interface feels old fashioned and limited. When Photodesk (widely acknowledged as the leading RISC OS bitmap package by a significant margin) came along, it was quite a revelation in terms of its flexibility, and the way it allowed you to use just about any effect with any tool. It was not modal in the way that packages like ProArtisan and Revelation had been; it had a superior and more modern interface. With ProArtisan, the whole business of what you can do with what tool seems much more strongly defined.
  1399. To me, ProArtisan feels to have aged a lot less well than Photodesk, and this is largely attributable to its interface. It doesn't have a bad interface, but it shows its age and feels somewhat inflexible, at least in comparison with more recent competition. That's not to say that ProArtisan isn't a good package; it's just not as impressive as it once was. Of course, that view must be balanced by the fact that it's now very much cheaper than ever before: at a price of under £40, compared with £170 previously, it seems churlish to be over-critical. If you want a bitmap editing package and can't justify the expense of the flagship Photodesk, ProArtisan 24 is a budget alternative that might not give all the bells, whistles and flexibility of the more expensive package, but is at least capable of producing some good results.
  1400. I mentioned near the beginning that I had been testing ProArtisan on my Iyonix. The good news is that the application is very pleasantly fast and smooth on this machine: the painting tools certainly feel more natural and fluid than ever before, the image processing options all work very quickly, and overall the speed and power of the machine translate into a pleasant experience in using the software.
  1401. However, I have to sound a note of caution concerning the stability of the current version of the software. Aside from experiencing two complete lock-ups while testing ProArtisan, there seem to be various rough edges and instabilities with the current version 1.20 release. I have reported my findings to APDL and hope that the problems will be addressed, but the worst bugs are the unrepeatable ones, where the program suddenly decides to behave oddly and fail to do what you expect it to.
  1402. During my testing, whilst the majority of functions worked fine, I certainly encountered a few things that didn't work as they should, and given the program's apparent willingness to do strange things from time to time, I'm just a little cautious about recommending the current release; it feels 'late beta' rather than 'production quality' at present. Anyway, I know that there are plans to develop the software further and add new features, so I hope that the current problems, which are really pretty minor, are temporary at best.
  1403. Conclusion
  1404. What this all boils down to is that one of the leading RISC OS painting packages from 'the olden days' has made the transition to RISC OS 5 compatibility, and that's a welcome move for any RISC OS application, no matter how venerable it may be.
  1405. ProArtisan is not, and has never been, in the same quality bracket as Photodesk, and given that a 32-bit version of Photodesk has already been released, that's what you should buy if you want the leading package in its class.
  1406. Nevertheless, ProArtisan is a fine program of its type. It's simpler and probably easier to use than Photodesk, and at its new low price it represents good value. If you have a previous version of ProArtisan 24 then there's no doubt at all that the new 32-bit upgrade is worth the fee: if you can run the program on an Iyonix, you'll find that the extra speed and fluidity of the tools makes the package a much greater pleasure to use than ever before. Existing fans will no doubt be delighted.
  1407. And if you don't own ProArtisan 24 already, well, now is as good a time as any to buy it. I hope that the current selection of bugs will be ironed out, even if no new features are added, but even as it stands, it's a capable and easy-to-use painting package with a number of interesting features that make it well worth adding to your software collection.
  1408. Product details
  1409.     
  1410.         ProArtisan 24
  1411.     
  1412.     
  1413.         
  1414.             Supplier
  1415.         
  1416.         
  1417.             APD
  1418.             
  1419. 39 Knighton Park Roa
  1420.             
  1421. Sydenha
  1422.             
  1423. London SE26 5R
  1424.         
  1425.     
  1426.     
  1427.         Tel.
  1428.         020 8778 2659
  1429.     
  1430.     
  1431.         Fax
  1432.         020 8488 0487
  1433.     
  1434.     
  1435.         Web
  1436.             
  1437.     
  1438.         Email
  1439.             
  1440.     
  1441.         Price
  1442.         £39 (fully inclusive)
  1443. (Please add £2 P&P outside the UK)
  1444.     
  1445.     
  1446.         Upgrades
  1447.         From Clares disc-based version: £29 (inclusive
  1448.         
  1449. Please return original discs with order
  1450.         
  1451. From APDL/ProAction CD version: £12 (inclusive
  1452.         
  1453. Please return original CD with order
  1454.         
  1455. (No extra charge outside the UK for upgrades)
  1456.     
  1457.  
  1458. Geoffrey Dea
  1459.  
  1460. ÿÿÿÿISSUE1/SUBS/INDEX.HTM Issue 1, RISCWorld Subscriber Discounts
  1461.  
  1462.  
  1463.  
  1464. RISCWorld Subscriber Discounts
  1465. Dave Holden introduces our discount scheme for subscribers...
  1466. Over the past few years APDL has become the major supplier of software for RISC OS. The range continues to grow, and we're well in to a program of updating and improving many of the older titles.
  1467. RISCWorld is now entering its fifth year of publication, and a considerable proportion of our subscribers have been with us from the beginning. Although it was never intended as such, the magazine is beginning to feel more like a 'club' than just another periodical. People who telephone APDL to purchase software or hardware, or for help or advice, often begin the conversation with "I'm a RISC World subscriber....."
  1468. We have frequently included special offers for software in the magazine. Normally this has been because it's just been reviewed or updated and we want RISC World subscribers to understand that we at APDL think they're slightly more 'special' than other RISC OS users. To acknowledge this we've now decided that in future all RISC World subscribers will be entitled to a 10% discount off all software published by APDL, APDL-ProAction and iSV Products.
  1469.  
  1470. This won't apply to 'third party' titles sold by APDL, such as David Pilling's Ovation Pro, or to hardware. But it does include the Topologika titles, since the RISC OS versions are now published by APDL-ProAction.
  1471. Getting your discount
  1472.  
  1473. To qualify you simply need to be a current RISC World subscriber, that is, your subscription must not have expired, and the goods would normally need to be delivered to the subscription address. So when you order by phone, e-mail or by post remember to state that you are a RISCWorld subscriber, if you don't say so at the time of ordering then you won't get a discount on the order, the system isn't automatic and relies on you, the customer, asking for the discount!
  1474. If your RISCWorld subscription has lapsed then you can renew it at the time of ordering and still claim your 10% discount.
  1475. Archive on-line
  1476.  
  1477. Whilst I am on the subject of the benefits of being a RISCWorld subscriber I ought to remind readers that they are entitled to join the Archive-on-Line mailing list.
  1478. In case anyone doesn't know, this is an email group moderated by Keith Johnson. Originally it was set up as an additional resource for subscribers to Archive magazine, but some time ago it was opened up to RISCWorld readers. It's a 'closed' list, which means it's not open to everyone, just those that qualify, and this makes it much more friendly that some of the c.s.a. newsgroups. It's also moderated, which tends to stop some of the people with more extreme views and improve the 'signal to noise' ratio. If you haven't already joined I suggest you give it a try.
  1479. A couple of weeks ago there was a problem because the email address seems to have been hijacked by someone who then used it to transmit a virus. This resulted in all outgoing mail from the list being blocked by a company called Energys that monitors the web for various ISP's. Eventually, after investigation, it was realised that the virus did not originate with the 'real' AoL, and so the connection was restored, and things are now back to normal, although as a precautionary measure the email address has been changed.
  1480. During the interim a suggestion was made to move the whole list to an alternative system, just in case it wasn't possible to get the problem sorted out, and so for a few days this was tried out with a few subscribers. Since the 'real' system has now been restored the 'alternative' system was discontinued, although it is being held in reserve in case something similar ever happens again. If you did receive mail from this alternative list don't worry.
  1481. As a consequence of the hijacking the email address for Archive on Line has been changed. Previously it was archive-on-line@argonet.co.uk. It is no
  1482. archive-online@argonet.co.uk Note the dropping of the second hyphen.
  1483. The moderator has specifically requested that subscribers using PC's or Macs do not put this in their address books as that is the most likely way in which the previous address was 'harvested'.
  1484. Signing on
  1485. If you haven't tried Archive on Line before then all you need do is send an email to the above address with SIGNON in the subject line. You should also, in the body of the email, put your full name and address. This is so that it can be checked against the list of RISC World subscribers to ensure that you are entitled to join.
  1486. So, your RISC World subscription just got even better value for money!
  1487. Dave Holden
  1488.  
  1489. ÿÿÿÿISSUE1/VIRTUAL/INDEX.HTM Issue 1, Using Virtual RPC-SE (and VA5000) with 'Restricted Users' on Windows XP
  1490.  
  1491.  
  1492.  
  1493. Using Virtual RPC-SE (and VA5000) with 'Restricted Users' on Windows XP
  1494. John Crane shares a helpful hint or two...
  1495. I've had VA5000 for some time on my Windows XP PC and recently upgraded to VRPC-SE. As what I'm writing here applies equally to both products I shall just refer generically to Virtual Acorn (or VA from here on). Similarly all my references to Windows XP are good for both Home and Professional products.
  1496. I have separate user log-ons on said Windows machine, myself with full administrative privileges and everyone else, as what Windows XP affectionately calls 'Restricted users'. In the main to stop my kids fiddling.
  1497. I bought Virtual Acorn (at least partly) so that I could effectively have two Acorn Computers on the go at once. I transferred all the kids' Acorn games etc onto the emulated machine so that they could play them whilst I could claim sole ownership of my Risc PC.
  1498. Anyway I soon discovered that, because of the way VA works that you really need to be logged on with administrative privileges for it to work. Indeed from a fresh install it will crash without even loading if you try to run it whilst logged on with a 'Restricted' account.
  1499. Anyway being a dabbler at heart I set about 'fixing' it so that it would work for 'Restricted' users. I informed Aaron, once I had it sussed and he then invited me to share the experience (that's just a little Windows pun sorry)! So I've put together a step by step guide with appropriate ScreenShots.
  1500. A point to note is that my PC is set up with 'Windows Classic' view as against out of the box 'XP TellyTubbies' view, so it may look slightly different to what you have, but not drastically.
  1501. There are a couple of prerequisites before you continue.
  1502. A reasonable familiarity with Windows definitely helps
  1503. You need to be logged on with Administrative privileges to perform 'The Fix'
  1504. Ensure you are not using 'Simple File Sharing' as this does not give you sufficient access to set permissions to the level required for this 'fix'. This is set 'On' by default in XP and so if you have never altered it you will need to turn it 'Off'
  1505.  
  1506. To turn off 'Simple File Sharing' open up Windows Explorer and on the tool bar select Tools - Folder Options.
  1507.  
  1508. In the window which appears select the 'View' Tab and in the area towards the bottom scroll right down to the bottom until you find 'Use simple file sharing (recommended)' This will be ticked by default. Untick it. You will probably get a warning message asking if you're really sure, so say 'Yes
  1509.  
  1510. Applying 'The Fix'
  1511. You are now ready to start in earnest. Assuming you have installed VirtualAcorn in the normal way proceed as follows :
  1512. Using me by way of example. I've installed Virtual Acorn whilst being logged on as 'John'. So by default Virtual Acorn will be installed in my
  1513. 'Start Menu'. This equates to C:\Documents and Settings\John\Start Menu\Programs and probably a desktop shortcut which equates to C:\Documents and Settings\John\Desktop.
  1514. In Windows Explorer - Right Click on the relevant shortcut / Start Menu Group and select Cut from the drop down menu
  1515.  
  1516. then navigate to C:\Documents and Settings\All Users\Start Menu\Programs. Now Right Click in the White Space in the Right Hand pane and select 'Paste
  1517. from the drop down menu.
  1518.  
  1519. Do similar for the Desktop Shortcut this will (following the same logic) end up in C:\Documents and Settings\All Users\Desktop.
  1520. This ensures that the shortcuts appear to  everyone who logs on (hence all users). It is likely though that, as the shortcuts were originally installed under 'John', only 'John' and any other administrative users will have permission to access the shortcut (s), so the next step is to ensure all users have relevant permissions.
  1521. In Windows Explorer - Right Click on the relevant shortcut / Start Menu Group and select 'Properties' from the drop down menu.
  1522.  
  1523. In the window which appears click on 'Security' Tab and ensure Permissions for 'Everyone' group are as per the screenshot.
  1524.  
  1525. (You may to need to Click 'Add' and then select 'Everyone' group before it actually appears in the list)
  1526. Again follow similar logic for the 'Desktop' shortcut
  1527.  
  1528. You have now ensured that anyone who logs on (no matter what their level of access) now has permission to access the shortcut(s), and start Virtual Acorn. However we've not quite finished with permissions as if  you now logged off and logged back on as a 'Restricted User' and attempted to run Virtual Acorn it would crash without loading. Basically as the program starts it must need some sort of modify / write access to the actual 'Program Files' directory to enable it to successfully load. Restricted Users by default are not allowed to access directories within 'Program Files' so in Windows Explorer navigate to C:\Program Files\ VirtualAcorn. Now Right Click on VirtualAcorn and select 'Properties' from the drop down menu.
  1529.  
  1530. Then give 'Everyone' 'Full Control'
  1531.  
  1532. As previously you may have to click on 'add' and select the 'Everyone' group.
  1533. A point of note here. If you apply the permissions at this level, all subdirectories within VirtualAcorn will inherit these permissions. Thus if you buy Virtual A5000 and set these permissions and then subsequently install VRPC-SE at a later date, the permissions will automatically filter down to the new install.
  1534. Ok nearly there now. At this point VA will run for 'Restricted Users', with one restriction. If you click on the CD drive within VA it will show as  'CDdrive cannot be found' This is because VA talks to the CD Drive at SPTI (SCSI Pass Through Interface - Ed) level and you need admin level access to do this.
  1535. There is a work round though with the following proviso. If you implement it, you will not be able to share your CD Drive out over a network and also if you ever access your machine remotely via Terminal Services the CD drive will not be available. If neither of these are a problem the following will allow 'Restricted Users to 'get the CD drive back' in Virtual Acorn.
  1536. Go to 'Start' - 'Run' and type MMC
  1537.  
  1538. An MMC console window will appear. Click on 'File' - 'Add/Remove Snap-in'
  1539.  
  1540. In 'Add/Remove Snap-in' window Click 'Add'
  1541.  
  1542. In 'Add Standalone Snap-in' window select (highlight) group policy and Click 'Add'
  1543.  
  1544. In 'Select Group Policy Object' window 'Local Computer' will be highlighted. Click 'Finish'
  1545.  
  1546. In 'Add Standalone Snap-in' window click 'Close'
  1547.  
  1548. In 'Add/Remove Snap-in' window it should now say 'Local Computer Policy'. Click 'OK'
  1549.  
  1550. Now under Console root by clicking on the + Signs expand
  1551.  
  1552. Local Computer Policy\Computer Configuration\Windows Settings\Security Settings\local policies.
  1553. Finally clicking on Security options so it is highlighted. Policies should now be displayed in the right hand pane.
  1554. Double Click on : Devices: Restrict CD-Rom access to locally logged-on User only. (This will be disabled by default).
  1555. In the box which appears click on 'Enabled' then 'Apply', then 'OK'.
  1556.  
  1557. Close the MMC console, say 'No' in the box asking you to 'Save Console Settings'.
  1558.  
  1559. You've finally done it! Restricted Users can now use Virtual Acorn without any problems, so you can allow your loved ones to use RISC OS without worrying about them messing around with your Windows installation.
  1560. John Crane
  1561.  
  1562. ÿÿÿÿISSUE1/WAKEFIELD/INDEX.HTM Issue 1, Wakefield 2004
  1563.  
  1564.  
  1565.  
  1566. Wakefield 2004
  1567. Aaron's action packed Wakefeld show report...
  1568.  
  1569. So once again I found myself loading up the boot of the car on a Friday morning ready to head up to Wakefield for another RISC OS show. Over the years Wakefield has established itself as the biggest show of the year and anyone who is interested in RISC OS can't have missed the flurry of press releases issued over the couple of weeks prior to the show, so this year the show looked like being even more exciting than usual.
  1570. I left home just after 12pm having checked tyres (1 spare centrally mounted), fluids (3 cups of coffee and a couple of cans of diet coke) and all the other minor items like stock, computers, till, float, pens, posters etc. I can normally drive to Wakefield in just over 3 hours, but since the Shogun is bigger and heavier I allowed 4 hours for the trip. In the end I finally drove into Thornes park a bit after 5pm, the delay being caused by roadworks on the M25, a nasty Discovery vs RangeRover accident on the south bound carriage way of the M1, of course on the northbound side we had to wait 45 minutes while rubber neckers got a good eyeful. I then got further delayed by the roadworks in Sheffield, still it wouldn't have mattered as the show stands was only just being finished when I arrived.
  1571. I found the stand, then drove round to the nearest unloading bay and then tried to find Graeme. Ah a comedy moment, I am ringing him just as he walks round a corner and we almost bump into each other. We unload all the stuff and then start the "which poster goes where" game. A few years ago I came to Wakefield and forgot my bluetack, so I went out to get some, but nobody seemed to have heard of bluetack, no, they have their own version called whitetack, it's just the same as bluetack except that it's white and doesn't hold anything up. So we spent most of the show leaping around trying to work out which poster was going to fall off next.
  1572. Anyway with the stand setup it was time to annoy other exhibitors, Dave Holden was already finished, as were R-Comp, however Stuart Tyrrell wasn't so we spent a pleasant few minutes offering "helpful" hints on stand construction. For some reason the voice of experienced stand setter-uppers didn't go down too well so we made our excuses and left. In the meantime the hall was filling up as other exhibitors arrived.
  1573. Graeme, myself and Dave Holden then de-camped the Camponile hotel (a kind of French run Colditz), had some beers, ate some dinner then had another beer or two, then got told the bar was closed.
  1574. Saturday
  1575.  
  1576.  Come the morning everyone else is up and running, but I am still in the land of nod, why? Well getting into bed last night I knocked over my alarm clock and broke it. So I sent the alarm on my phone, which went flat. So just before 9 there is frantic hammering on the window, arghh, I get up and fall into the shower, then fall out again rapidly as it's on cold. It takes 15 minutes to shower, dry, sort myself out and get to the show. Normally you can't park around the hall and have to use the carpark out front, but we have a couple of boxes that we need "to deliver" and so get in, and hence have less far to walk.
  1577. We then have a frantic half hour sorting out the stock and delivering stuff to dealers and finish just in time for the show to open. There is a reasonable size queue and people start wandering in, but we stay un-visited for a good 20 minutes, then we have out first paying customer and we are off, before we know what's happened it's 1 in the afternoon and I take a few minutes off the stand for a walk round.
  1578. I decide to take the complete walk round starting at the customer entrance. So first up are APDL who have their usual end of block stand. Dave Holden admits that he has been very busy and is running out of both DrawWorks and Sleuth upgrades (by the close of the day he runs out of both - and by Sunday I start wondering if Holden is an old Yorkshire name as he is dancing round the till). Moving past VirtualAcorn, where the new version of VirtualRPC-Adjust is doing brisk business, I bump into Stuart Tyrrell. He has calmed down from yesterday and is showing off the new Unipods as well as the ARM7500 based A75 (which is intended for non desktop customers) and a new A6+. He seems rather happy, indeed over the weekend I notice the stack of boxed A6 machines diminish to almost nothing. I grab a copy of Pocket RISC OS (actually a RISC OS 3.11 ROM made into a key fob) and then notice Stuart's attire, a black polo shirt and a baseball cap? Can I get fries with that? No? Perhaps I could go large for 30p? I won't print his reply but we mutually decide that I will continue my wandering.
  1579. I pass a busy looking Ray Favre selling DrWimp books for charity, then I spy Mike Glover from Icon Technology. Has he been to the Dave Holden dance academy? No, but he has sold out of everything inside 2 hours and is well chuffed, it seems that Techwriter and Easiwriter customers are delighted that development on the two packages has re-started. I also spy Martin Wuerthner with the new version of Artworks2 that includes dynamic clipping and looks very very good, next to him is Steffen Huber who has just launched DVD-Burn, as well as continuing development on CD-Burn, he too looks to be having a good show.
  1580. I walk past the huge central Quercus stand, selling lots of back issues of Acorn User and Acorn Publisher, as well as board games and all sorts of other things and head past CJE micros and Fourth Dimension who once again seem to have bought the entire shop with them. If there is anything RISC OS related that CJE don't have I will be amazed. Opposite them are Etc systems with a range of RISC OS spares then we have Argonet Internet Services and then IC Software with their range of printed manuals for RISC OS applications.
  1581. Next I bump into R-Comp who are doing brisk business in both software and hardware, the new Grapevine2 seems to be a popular purchase. I then swing past the massive charity stall, pausing only to pick up a Cambridge Z88, complete with link cable and PipeDream manual, for a measly £5 (even better when I get a chance to try it later it actually works). I spy Paul Beverley on the Archive Publications stand selling the latest Archive CD, as well as subscriptions. Next along are RISCOS Ltd who have a wide range of machines all running RISC OS Select or RISC OS Adjust. Paul Middleton was doing a healthy trade in RISC OS Select ROM upgrades for existing machines, both real and Virtual, and was continually busy.
  1582. Next to them were Liquid Silicon, who had a MicroDigital Omega complete with fully working network card (which are now shipping to customers). Along from them were the MatchMagical Software Company, then Brian Jaques with his web writing CD, a tutorial for HTML designers of all ages and experience levels. Then there was Kate Crennell of Fortran friends showing a wide range of software, and next door were Brain Games. We had a brief chat and were able to sort out a CD writing problem that they had been having.
  1583. The next people I saw were the Arm Club, Ralph Sillet told me that the Arm Club Midlands show would be on again this year and promised to come round later with an information pack, which he did. Aemulor and Cino DVD were on display on the next stand, with rumours of a new version of ADFS in the offing for the Iyonix, apparently the current one isn't fast enough to play back DVD movies, and this has delayed the release of Cino. Opposite them was EFF, I did wave at Edward but he was busy with a customer, no doubt exploring the huge range of RISC OS fonts available. I then got badly side tracked by the X-Ample stand, not due to the impending release of Impression X, but due to the build your own Enigma machine kit which had the geek in me jumping up and down, regretfully I forgot to buy one before the show closed and now I will have to e-mail them for a price.
  1584. Finally we came round to the biggest stand of the show Castle Technology, who were showing the new Iyonix Panther which was the same machine in a new case, with the same old price. Castle were also muttering about a big order for between 10,000 and 100,000 machines for a customer outside the normal desktop market (as far as I have been able to tell this seems to be for set top boxes that don't run RISC OS). Castle were doing a brisk trade in updates as I saw a number of machines being carried over to the stand to have the mods made to the motherboard. Also on the stand were OreganoUK showing the latest version of Oregano2.
  1585. I then headed back to our stand and spent the rest of the day looking after customers. I did get one shock when I was told the show shut at 6pm, no, it must be a wind up, but it wasn't. So once the show shut we stuffed the contents of the till into the laptop case and headed for the hotel and well deserved beer. Then we had to find some dinner, so we walked to the Holmfield Arms, which used to be a nice Beefeater type restaurant and was always heaving, but wait the decor's changed and its empty! We bump into R-Comp who have just had dinner and are not impressed, we take their advice and "high tail" it out without ordering. We walk back to the hotel and all jump in the Shogun. The theory is that we can drive into Wakefield and find a restaurant, ho ho. We don't find any restaurants, but we do find plenty of take-aways, as well as loads of town centre pubs with bouncers on the door. We then spend another half hour driving around trying to find a restaurant. Then I get a smart idea, why don't I use the locator service on my new 3G phone to find the nearest Indian, answer, because the service doesn't work in Wakefield, grrr.
  1586. Eventually we end up at the Red Kite on the way back out of Wakefield towards the M1, it's not bad at all, but we only just make dinner before the restaurant shuts. We head back to the hotel, Graeme goes to bed, but Dave Holden and I go to the bar again...
  1587. Sunday
  1588.  
  1589. Sunday at the show is considerably quieter, although everyone still seems to do good business, with everyone that I spoke to reporting takings to be up on last year. I do get a chance to so a quick video walkround which I have included on this issue of RISCWorld. I don't get time to attend any of the talks, but both Castle and RISCOS Ltd were giving talks on the future of RISC OS, I wonder which of the possible futures we will end up with? John Cartmell gives a talk about Quercus and "what our Acorn's have become", well quite a few of them seem to have become items on the charity stand.
  1590. Before we know it it's nearly 4 o'clock and the customers have vanished so we start packing up, and finishing quickly, manage to annoy Stuart Tyrrell yet again with more "helpful" suggestions. Then it's time to say our goodbyes and head to Burger King at the services for some food. We then finally split up and I head back down the M1, pausing only for more rubber neckers, "oh look a car on fire, lets stop next to it!", an abandoned suitcase in the fast lane causing a 45 minute tail back and the usual collection of roadworks. I finally get home a little before 10pm and then unload. Of course next day I have to process the huge pile of credit card receipt and cheques...look I've been to the Dave Holden dance academy as well!
  1591. Aaron
  1592.  
  1593. ÿÿÿÿISSUE1/WEBFX3D/INDEX.HTM Issue 1, WebFX3D
  1594.  
  1595.  
  1596.  
  1597. WebFX3D
  1598. RISCWorld presents the WebFX3D Manual.
  1599.  
  1600.  
  1601.  
  1602.  
  1603. Introduction 
  1604. Getting Started 
  1605. Creating Objects 
  1606. Working with a scene 
  1607. Scene Lighting 
  1608. Rendering 
  1609. Reference 
  1610. Add-ons 
  1611. Hints and Tips 
  1612.  
  1613.  
  1614. email: dan@dansoft.co.nz 
  1615. internet: www.dansoft.co.nz 
  1616. Copyright Daniel M Johnson (c) 1999 
  1617. Copyright and Disclaimer
  1618. Information in this manual is subject to change without notice. Complying with all applicable copyright laws is the responsibility of the user. No part of this document may be reproduced by any means, electronic or mechanical, for any purpose, without the express written permission of Dansoft Developments. 
  1619.  
  1620. Copyright Dansoft Developments (c) 1999. All rights reserved. 
  1621.  
  1622. Other product and company names mentioned herein may be trademarks of their respective owners. 
  1623. RISCWorld
  1624.  
  1625. ÿÿÿÿISSUE1/WEBSITE/INDEX.HTM Issue 1, Planning a Website
  1626.  
  1627.  
  1628.  
  1629. Planning a Website
  1630. Gavin Wraith continues his series
  1631. In part 1 I described two general principles that I wanted to apply to the website for which I had been commissioned: Accessibility and Orthogonality. The first effectively means keeping it simple, the second keeping it flexible, with content editable separately from furniture (my term for the overall structure, the means of navigation within the site and any overall theme or style). There is a compromise that any forward planning must settle on, between too little preparation, that can give trouble when unforeseen events require rapid responses, and too much, that leads to wasted effort when plans have to change, say when the commissioners of the project want structural changes. When I was taught to fly gliders, half a century ago, I remember the instructor telling me to keep my eyes on the horizon when we came in to land, and not to focus on particular objects round the runway, and to gauge the craft's attitude out of the corners of my eyes. Coming in to land with a design project is much the same; do not focus on the details obsessively but stay alert.
  1632. For my first meeting with the organizers I would need something to show them. Without any content provided yet, all I could do was produce a skeleton. The problem would be that most of its critics would see only the surface appearance, and would not be able to appreciate the necessary work that had gone into the underlying structure. RISCWorld readers, on the other hand, will, I hope, be able to grasp the broader picture. Let me now describe an elementary aspect of planning, often overlooked, which can have a big impact on the real work later on: exploiting the filing system.
  1633.  
  1634. I first decided to make the website flat. By this I mean putting all the HTML files into one directory, together with a directory, images, for containing graphics files, and a directory Data for containing all the files from which the HTML files and the graphics files would be constructed. The reason for this choice was that it eliminated a frequent source of bugs - breaking the links to graphics files when files are moved to another directory. When it comes to uploading the site to the server, only the HTML files and the images directory are uploaded - the part indicated within the red oval in the picture above.
  1635.  
  1636.  
  1637. The Data directory contained a directory Pages with one high level description file, of type Weave (official filetype number &18d - more about that later) for the contents of each HTML file. My convention was that each Weave file foo created an HTML file foo/html. The furniture for the website was defined in the two text files defs and menus. These files are consulted by the Weave files. Each Weave file can be run separately by double clicking on its icon. The effect is to create the corresponding HTML file. They can all be run simultaneously by double clicking the Obey file Update! which simply contains the line:
  1638.     do repeat filer_run <Obey$dir>.Pages -type 18d
  1639. This updates the whole site after any changes made in the high level description. With this scheme all the website contents go in the directory Pages and all the furniture in defs and menus.  Thus is orthogonality achieved.
  1640. The scheme that I outline here is about the simplest one can contemplate. To add another webpage means putting another file into Pages and editing menus, which describes a navigation bar. In fact even that could be automated, were it not that labels for navigation buttons are not always best described by filenames. It is also good for  a framed version of the website. In that case each Weave file foo should create two HTML files, foo/html and foo0/html, for the framed and unframed versions of the page. It is easiest to construct the HTML file defining the actual framesets by hand, because these are not in the form that Weave assumes as default for webpages. One also needs Weave files for each of the furniture frames. These could all go in their own directory to preserve the  barrier between furniture and content. The unframed version of a page will use a table mimicking the framesets and all the furniture entries of the table will be filled in by data from defs and menus. It is important to understand that the Weave files defining the content remain exactly the same, because the differences between the framed and unframed versions can all be hidden in functions defined in defs.
  1641. You often see websites with fancy buttons for navigation. Indeed, there are button-factories out there on the internet that provide a bewildering variety of styles and colours. I did not see how I could use these and still retain the flexibility I needed for being able to update with new pages at the drop of a hat. I did a little experimenting with making my own buttons and swiftly came to the conclusion that I lacked the requisite graphics software to do the task satisfactorily. The simplest, easiest and most boring solution is just to click on text. I decided in the end to go for a compromise and have navigation bars resembling lists where each item consists of a graphic followed by text. The graphic would have two forms, open for the current page and closed for the rest, like directory icons.
  1642. Now, is this construction actually going to deliver the goods? Much as I had anticipated, when it came to showing off my initial efforts to the sponsors, the only feedback I got concerned the visible details. This taught me that it is probably better to keep mum about the underlying structure. After all, it is what is visible that is the end product, and burdening people with what they do not need to know is not a good idea. What I lacked now was some content, and in particular some appropriate graphics. The only graphic that I had constructed, as decoration for my skeleton, would, I was assured, induce apoplexy in certain quarters, so I hastened to remove it.  At least I did get some useful advice about the diverse parts that the website should comprise. However, this brought home to me the realization that putting all the webpages in one directory might turn out to be a bad idea. In the absence of useful content from the sponsors, my only recourse was to experiment with another website that already had plenty of that, but which needed a fundamental restructuring - my own.
  1643. So, was it to be back to the drawing board, or could I extend my ideas for orthogonality to non-flat websites?  One aspect of the design above that I did not like was having the Data directory inside the directory holding the webpages.  It would have been better to have it outside so that all the material to be ftped to the server was in one directory. In fact, I found it fairly straightforward to modify the structure described above to work for a hierarchically structured website, so long as I adopted the following conventions:
  1644. All the webpages in a given subdirectory should share the same furniture
  1645. Each subdirectory of webpages is ordered by the position of objects in the common navigation bar for it. The bottom item in the navigation bar leads back to the top  item in the parent directory, if there is one
  1646.  
  1647. So the new structure would consist of two directories at the same level. Data holds the Weave source for the website and site holds the website itself:
  1648.  
  1649. The directory structure inside site should be mirrored by a similar structure inside Data, and each corresponding subdirectory in Data should have the standard equipment that we have seen before.
  1650.  
  1651. This scheme provides a compromise between simplicity and flexibility. It keeps the part to be uploaded to the server separate from the machinery that creates it, and allows the furniture to vary according to the subdirectory. Each subdirectory of the website can be updated as a whole by doubleclicking the corresponding Update! obeyfile.
  1652. So far I have avoided giving any details about the Weave webpage-description language. They will have to wait for the next instalment, but in preparation let me point out that an HTML document can be viewed as a sort of tree. For example:
  1653.  
  1654. The names in red denote text that you fill in, those in black are HTML tags. The corresponding Weave expression is:
  1655.     {
  1656.      DOCTYPE
  1657.      HTML 
  1658.            HEAD(TITLE(titletext))
  1659.            BODY 
  1660.                  H1(heading)
  1661.                  P
  1662.                  text1
  1663.                  UL 
  1664.                      LI; text2
  1665.                      LI; text3
  1666.                     } ; -- U
  1667.                 }; -- BOD
  1668.          }; -- HTM
  1669.     };
  1670.  
  1671. Note that the red names correspond to variables, in lower case. Sequences are enclosed in braces and items are separated by semicolons. The -- symbol just denotes a comment. The HTML tags DOCTYPE, P and LI are just constants while HTML, HEAD, TITLE, BODY, H1 and UL are functions; this is because they have corresponding end-tags. What comes between the start-tag and end-tag is the argument, which could be some complicated expression. The parentheses round the function argument can be omitted when the argument is an explicit sequence. But the point about Weave as opposed to HTML is not the different syntax but the fact that you can use variables and functions. In fact Weave provides one or two other keywords (always in capitals to distinguish them from variables in lower case) in addition to HTML tags which means that you do not have to bother with DOCTYPE, HTML, HEAD, TITLE or BODY - a standard template is set up for you.
  1672. For the purposes of understanding how the separation of content from furniture is achieved, I will mention here just one of the extra keywords, the function DOFILE. This takes a file's pathname as argument, and calling the function causes the Weave statements in the file to be executed. So common definitions can be used by putting them in separate files and then using DOFILE. Its use is like that of #include in C. The defs and menus files in the scheme outlined above are incorporated into the individual Weave scripts in the Pages directory this way. Because Weave is a higher-order language than HTML we are able to modularize the construction of webpages in ways that are impossible using HTML alone.
  1673. Gavin Wraith
  1674.